en 235 JSJ JavaScript Devops and Tools with Donovan Brown and Jordan Matthiesen By devchat.tv Published On :: Wed, 26 Oct 2016 08:00:00 -0400 00:50 Intro to guests Donovan Brown and Jordan Matthiesen 1:14 Javascript and Devops 3:49 Node JS and integrating with extensions 11:16 Learning Javascript coming from another language 15:21 Visual Studio Team Services at Microsoft, integration and unit testing Visualstudio.com Donovanbrown.com 25:10 Visual Studio Code and mobile development Apache Cordova open source project 31:45 TypeScript and tooling 33:03 Unit test tools and methods 38:39 ARM devices and integration QUOTES: “It’s not impossible, it’s just a different set of challenges.” - Donovan Brown “Devops is the union of people, process and products to enable continuous delivery of value to your end users” - Donovan Brown “Apps start to feel more native. They can actually get form.” - Jordan Matthiesen PICKS: Veridian Dynamics (AJ) Jabberwocky Video (AJ) Hard Rock Cafe - Atlanta (Charles) CES (Charles) 3D printers (Donovan) High-Yield Vegetable Gardening (Jordan) taco.visualstudio.com Jordan on Twitter @jmatthiesen Visualstudio.com Donovanbrown.com Donovan on Twitter @donovanbrown SPONSORS: Front End Masters Hired.com Full Article
en 236 JSJ Interview with Mads Kristensen from Microsoft Ignite By devchat.tv Published On :: Wed, 02 Nov 2016 08:00:00 -0400 TOPICS: 4:00 Things that make web development more difficult 7:40 The developer experience with Angular 10:40 How cognitive cost affects the user experience 16:52 The variety of users for whom Mads’ software is built 22:14 Creating accessible javascript tools that aren’t immediately outdated 28:20 Why people shouldn’t be using dependency installers 34:00 Node updates QUOTES: “The massive introduction of new tools all the time is a big part of what makes web development harder.” -Mads Kristensen “I’m not a pretty pixels person, I’m a code and algorithms person.” -AJ O’Neill “I’m not hearing hype about people using HTTP2 to get those benefits, I’m only hearing hype around tools that Static built.” -AJ O’Neill PICKS: Death Note Anime Show JS Remote Conference The Alloy of Law Book by Brandon Sanderson Zig Zigler Books on Audible Mr. Robot TV Show RESOURCES & CONTACT INFO: Mads on Twitter Mads’ Website Full Article
en 238 JSJ Intellectual Property and Software Forensics with Bob Zeidman By devchat.tv Published On :: Wed, 16 Nov 2016 08:00:00 -0500 TOPICS: 03:08 The level of difficulty in determining code creators on the Internet 04:28 How to determine if code has been copied 10:00 What defines a trade secret 12:11 The pending Oracle v Google lawsuit 25:29 Nintendo v Atari 27:38 The pros and cons of a patent 29:59 Terrible patents 33:48 Fighting patent infringement and dealing with “patent trolls” 39:00 How a company tried to steal Bob Zeidman’s software 44:13 How to know if you can use open source codes 49:15 Using detective work to determine who copied whom 52:55 Extreme examples of unethical behavior 56:03 The state of patent laws PICKS: Cognitive Bias Cheat Sheet Blog Post Bagels by P28 Foods Let’s Encrypt Indigogo Generosity Campaign Super Cartography Bros Album MicroConf 2017 MindMup Mind Mapping Tool Words with Friends Game Upcoming Conferences via Devchat.tv Good Intentions Book by Bob Zeidman Horror Flick Book by Bob Zeidman Silicon Valley Napkins Full Article
en 244 JSJ Visual Studio with Sam Guckenheimer By devchat.tv Published On :: Wed, 28 Dec 2016 08:00:00 -0500 1:05 - Introducing Sam Guckenheimer Twitter Microsoft Devops 2:45 - Continuous integration with Visual Studio 4:15 - Visual Studio on Macs Download link 5:55 - Is Visual Studio just for C#? Chris Dias JSJ Episode 8:45 - Container support and the Cloud 14:20 - Docker and Visual Studio 17:40 - Communicating with multiple services 24:15 - Talking to clients about change and working with transformation 33:00 - Telemetry and collecting data 37:50 - Xamarin forms 47:50 - Deployment with changed endpoints Picks: Daplie Wefunder (AJ) Unroll.Me (Charles) Focused Inbox on Outlook (Sam) WhiteSource (Sam) The Girl On The Train (Sam) The Pigeon Tunnel by John le Carre (Sam) Full Article
en JSJ 245 Styled Components and react-boilerplate with Max Stoiber By devchat.tv Published On :: Tue, 17 Jan 2017 06:00:00 -0500 On today's episode, Aimee and Chuck welcome Maximillian "Max" Stoiber to the show. Max hails from Austria and is an expert in open source development at Think Mill. Tune in to JSJ 245 Styled Components and React-Boilerplate with Max Stoiber. Full Article
en JSJ 247 Building a Development Environment with Cory House By devchat.tv Published On :: Tue, 31 Jan 2017 06:00:00 -0500 On today's episode, Charles Max Wood, AJ O'neal, Joe Eames, and Aimee Knight discuss Building a Development Environment with Cory House. Pluralsight recently added a course on this. Tune in to know more! Full Article
en JSJ 248 Reactive Programming and RxJS with Ben Lesh By devchat.tv Published On :: Tue, 07 Feb 2017 06:00:00 -0500 On today's episode, Charles Max Wood, Joe Eames, and Tracy Lee discuss Reactive Programming and RxJS with Ben Lesh. Ben works at Netflix and also has a side job for Rx Workshop with Tracy. He is the lead author of RxJS 5. Tune in to learn more about RxJS! Full Article
en MJS #006: Dennis Ushakov By devchat.tv Published On :: Thu, 23 Feb 2017 05:00:00 -0500 On today's episode of My JS Story, Charles Max Wood welcomes Dennis Ushakov. Dennis is a team lead of WebStorm and RubyMine at JetBrains. Tune in to My JS Story Dennis Ushakov to learn more about his programming experience in Java and JavaScript. Full Article
en JSJ 252 The 20th Anniversary of Visual Studio with Bowden Kelly By devchat.tv Published On :: Tue, 07 Mar 2017 06:00:00 -0500 Javascript Jabber is hosted this week by Joe Eames, Aimee Knight, AJ O'Neal, Cory House, Charles Max Wood and their special guest Bowden Kelly. Bowden is a program manager at Microsoft and he shares some insight into the new features in Visual Studio 2017 RTM with Bowden Kelly. Full Article
en JSJ 258 Development in a Public Institution with Shawn Clabough By devchat.tv Published On :: Tue, 18 Apr 2017 06:00:00 -0400 On today's JavaScript Jabber Show, Charles and Aimee discuss Development in a Public Institution with Shawn Clabough. Shawn is a developer and developer manager at Washington State University. He works with the research office, and has been in the industry for 20 years. Tune in to this exciting episode! Full Article
en JSJ 264 Mendel with Irae Carvalho By devchat.tv Published On :: Thu, 08 Jun 2017 23:22:00 -0400 Full Article
en JSJ 267 Node 8 with Mikeal Rogers, Arunesh Chandra, and Anna Henningsen By devchat.tv Published On :: Tue, 27 Jun 2017 06:00:00 -0400 JSJ 267 Node 8 with Mikeal Rogers, Arunesh Chandra, and Anna Henningsen On today’s episode of JavaScript Jabber we have panelists Joe Eames, AJ O’Neil, Amiee Knight and Charles Max Wood and we are talking about Node 8. To help us we have special guests Mikeal Rodgers, Arunesh Chandra, and Anna Henningsen. It’s going to be a great show. Tune in. [1:56] Is Node 8 just an update or is there more? More than just an update Two main points: Improved Prana support Native API Native APIs are helpful for Native Add-ons. For both the consumer and the developer side. Prior to update these Node Native modules ran in C++ and bound to specific to Node 8 APIs. Causes these modules to be updated or reconciled every time these modules are rereleased. Creates burden for module maintainers. Creates friction in upgrading Node versions in production departments. If you have a deployment depending on a certain Native module, some of the modules may not get updated in time when updating your Node versions. Keeping people from updating Node. Creates compatibility issues with Node users not using Node 8 Experimental support for a Native layer in Node 8 to eliminate these issues as much as possible. Important milestone for the module ecosystem. You can write extensions for Node in C++ and it decouples V8 so you can use something else on the front. Modules takes dependency on V8 API specific to a particular version. So if V8 changes your module will be extracted from that. As a side benefit, you can have another VM to take advantage of that. Major version upgrades mean updating Native modules and usually some of those modules haven’t updated to the newest version of Node and be complicated. Deep dependency wise, about 30% depends on a Native module somewhere In the future, with the Native API, you’ll be able to update Node without breaking modules. [5:51] What kind of work went into this? Most of the work was in C++ First thing that was done was, they looked at the top dependent Native modules in the ecosystem. Looked for what kind of V8 exposure they had and cataloged it Looked at how these APIs and what their purposes were Looked for a way to extract them so that they are part of Node Core Created neutral APIs, now part of the Node core. All C APIs Also has a C++ wrapper to improves usability of the API. [7:17] What’s an example of what you can do with these APIs? Native modules allows for tighter integration and better module performance Specific APIs that you can use in V8 that isn’t available through JavaScript If you have a C++ variable code and you want to expose a variable into JavaScript, that is V8 API note a Node 8 API Having it bound directly to the VM was something they wanted for a long time Google controls V8 and they bind to V8 Created a better relationship with Google starting in IOJS Also worked with Microsoft with their Node Shocker work. Same with SpiderMonkey SpiderNode is in the works [9:23] Have you guys done any testing for performance? Some. There is a performance working group. There is a need to stay on top of V8 V8 team has focused on new language features Many features have been added over the years Many didn’t come in optimized The performance profile has changed with these features If you’re using new language features, you will see a performance boost In core, still tracking down code that was specific to the old optimizer and rewriting i to work the new optimizer Turbo C compiler hasn’t landed yet, but is to come. Will have a completely different performance profile In most real world applications it will be faster Waiting on the release to take a version of V8 to make it easier to upgrade features in the future [11:28] Are the new features picked up from V8 or implemented in Node? It’s all in V8 Better longterm support Promises are made better in Node as a platform Added new method called util.promisify() Implementation comes from V8 Allows for more optimization for promises in Node core Promise support for the one-deprecated domains module. [13:02] Is there anything more than NMP 5? First off, delete your NMP cache. It’s in your home directory usually with a .npm extension [14:09] What are the new features in V8? Unlimited heap sizes, previously had a 4gb limit. No fixed limit. [14:09] Will you see things like chakra come out tuned for servers? Profiles of a server for application process are getting smaller Getting cut into containers and VMs and micro services Vms that have cold boot time and run quickly in a strained environment is looking more like what we will see in the future Yes, especially if you’re using cloud functions V8 is optimized for phones, but Chakra is even more so Looking for opportunities for VMs can be solely optimized for a device target Node take advantage of that VM VM neutrality is an interesting concept VM Vendors trying to optimize it based on workloads of a server Opens opportunities for Node Node Chakra has been proved to iOS. You can cut off jitting off which was a requirement to be able to be in the Apple App Store Node is not just for servers anymore Node doesn’t take a long time configuring it When a developer runs code on an IoT or a mobile app they don’t control the VM that is bundled, they run it on top of Node and it just works. VM neutrality gives a new vector, so you can swam a whole different VM [18:44] When running different engines like iOS vs Android, does the profile change? What it comes down to is if it’s eventive programming The browser is an eventive environment, is very efficient waiting for things to happen before it does something The way that we program servers and nodes are the same as well the basics are the same generally environmental differences exist but the programming model is usually the same What does impact it is memory and processor and hardware and things like that That is where tuning the VM comes into play [20:29] What is the new Async Hooks API used for? Node has been lacking for automated inspection of Async Hook No way for Node to tell you when scheduling and beginning of an Async operation. Hook helps with that it’s a way for developers to write debugging features Node tells the application that it’s working with Asynchronous way. The embedded inspector has been embedded since Node 6 Now has a JavaScript API to use it You can use things like Chrome debugger inside the running node process Old debugging protocol has been removed VM.run is still there but in the process of being deprecated [22:34] How like is the experimental Node API will change? Marked as experimental because it’s the first time in the open Hopefully out of experimental soon Soon can port API to the existing LTS Looking for more people to participate with the new API and give feedback Fix any concerns before it goes to LTS Some other experimental things are in the works like ASync Hooks and how it interacts with promises Renaming some features Another new feature - serializer and deserializer that comes with V8 experimental but will most likely stay [25:31] what is your standard for going to LTS? Major releases every 6 months Next Oct Node 9 will come out and then Node 8 will be LTS Documentation, updates, additions etc will be ready then Plan to do it for 2.5 years Every even releases come out to LTS as the odd release comes out Helps keeps a current line while having something new in the release line Node 6 is the current LTS version [27:26] What are you taking out or deprecating in Node 8? Use the word deprecate sparingly If many people use features, it’s hard to get rid of Security issue with Buffer, constructor argument was ambiguous Had added APIs that were more explicit over time and pushed those Now it will be deprecated [28:43] 21% - 33% Performance increase with some Node updates Someone online updated their React app to Node 8 and found an 21% - 33% increase Benchmarking group tests to make sure things are getting faster V8 is always getting faster as well Code changes fast and so there is a chance performance slows down so they have people to check Benchmark test are all automated by a team [30:47] Is it safe to just switch to Node 8? For front-end, yes clear your NPM cache Back use cases will usually wait until LTS [31:28] Where any of the features hard to implement? The API work took about a year It was a collaboration which made it interesting IBM, Intel, Google were involved The collaboration took a while Also Async hooks took at least a year. Async hooks used to be called async wraps and has been in the work for almost 3 years many of the changes were the accumulation of small chances [33:07] It’s the little things Letting people get small changes in accumulate into a big difference the product gets much better that way [33:57] What versions of Node are you actively updating? Current releases of Node 8 for a half of year Node 6 is LTS Additional year of maintenance of previous LTSs. Schedule is at http://github.com/node8js/lts in a chart Support for Node 4 with only critical updates, Node 6 minor updates, and Node 8 Node 7 doesn’t get much support unless it’s vital security supports. If you’re running 0.10 or 0.12 stop. Those do not get security fixes anymore [35:42] Where do you see things going from here? Mostly still working out Async hooks Maybe add some web worker or worker support for Node JS ES module support Working to make promises better Working on the performance profile and internal systems [20:29] What is the adoption like of Node 8? Node team gets better at getting people to adopt quickly but about 5% - 6% will not upgrade community doubles each year at 8 million users right now Here is a graph on Twitter posted by NPM Limiting breaks and softly deprecating things makes it’s easier to upgrade [40:11] How can people contribute and get involved? NodeToDo.org shows how to make contribution Occasionally major conferences have information on how to contribute Test it out and help make it stronger [42:08] If people install Node 8 and have issues what can they do? If it’s an NPM problem check with them clear cache! install newest version with: npm install -g npm@latest Report problems to either NPM or Node If you’re not sure where the problem is, check github.com/nodejs/help Links Node8 Node’s Twitter Node’s Medium Node Evangelism Group Mikael on Twitter and GitHub Arunesh on Twitter Anna on Twitter Picks AJ Overclocked Remix Super Mario RPG Window to The Stars Amiee Blogpost RisingStack on Node 8 2 Frugal Dudes Charles Homeland House of Cards Joe Shimmer Lake Mikael Blake2b-wasm Aremesh Current Nightly News Full Article
en JSJ 268 Building Microsoft Office Extensions with JavaScript with Tristan Davis and Sean Laberee By Published On :: Tue, 04 Jul 2017 06:00:00 -0400 JSJ 268 Building Microsoft Office Extensions with Javascript with Tristan Davis and Sean Laberee This 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 Laberee Tristan 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 Model If 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 are coding the product are reading the same marked-down files in the same repo that you, as a developer, can come and look at. And you can comment. You can add issues like you could have a dialogue with that PM. Under the OfficeDev, you’ll find a tunnel repository that contains samples. Our docs are there. Picks AJ O'Neal Lithium Charles Max Wood Miracle Morning by Hal Erod Clean Code by Uncle Bob Martin Ketogenic diet Tristan Davis Amazon Echo Microbiome Sean Laberee Running Garmin watch Full Article
en JSJ 269 Reusable React and JavaScript Components with Cory House By devchat.tv Published On :: Tue, 11 Jul 2017 06:00:00 -0400 JSJ 269 Reusable React and JavaScript Components with Cory House On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in! [00:01:35] – Overview We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done. Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issue The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components. Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead. [00:07:50] – Polymer The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser. [00:14:20] – Standards are dead No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library. Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about. [00:17:05] – Libraries making reusable components There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well. As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there [00:21:20] – Why opt for reusable components Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse. As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components. [00:31:20] – Rigid component vs. flexible component As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder. We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough. Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later. [00:36:00] – Reusable components The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously. We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue. [00:42:45] – Component development on teams Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need. [00:47:45] – Mobile to web crossover Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application. [00:50:00] – Challenge Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?" Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember. Picks Cory House Creating Reusable React Components on Pluralsight Ted Talk: Why You Should Define your Fears Instead of Your Goals by Tim Ferriss Joe Eames UI-Router Persistence Aimee Knight Ask HN: People who completed a boot camp 3+ years ago, what are you doing now? NgAtlanta Charles Max Wood Upwork.com JSJ 269 Reusable React and JavaScript Components with Cory House On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in! [00:01:35] – Overview We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done. Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issue The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components. Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead. [00:07:50] – Polymer The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser. [00:14:20] – Standards are dead No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library. Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about. [00:17:05] – Libraries making reusable components There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well. As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there [00:21:20] – Why opt for reusable components Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse. As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components. [00:31:20] – Rigid component vs. flexible component As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder. We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough. Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later. [00:36:00] – Reusable components The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously. We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue. [00:42:45] – Component development on teams Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need. [00:47:45] – Mobile to web crossover Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application. [00:50:00] – Challenge Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?" Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember. Picks Cory House Creating Reusable React Components on Pluralsight Ted Talk: Why You Should Define your Fears Instead of Your Goals by Tim Ferriss Joe Eames UI-Router Persistence Aimee Knight Ask HN: People who completed a boot camp 3+ years ago, what are you doing now? NgAtlanta Charles Max Wood Upwork.com Full Article
en MJS #025 Helen V. Holmes By devchat.tv Published On :: Wed, 12 Jul 2017 06:00:00 -0400 MJS 025: Helen V. Holmes This episode features a My JavaScript story with Helen V. Holmes. Helen has never before been a guest on the show. She is both a designer and front-end programmer who previously worked for Mozilla. In January, she started her own freelancing business. Listen to Charles Max Wood and Helen discuss how she got into programming, what made her decide to open a freelance business, and more! How did you get into programming? Helen started by making themes for herself and friends in LiveJournal using other people's CSS themes. Once she got to college she realized that although this wasn't a career, it was an aspect of a career. She then majored in graphic design, going on to do internships in both front-end development and design. Since college, she has gone back and forth between front-end development and design work. How long ago was that? Helen graduated college in 2013. Did you graduate in computer science? Helen did not even minor in computer science. At the time, she was focused on making stuff. The computer science major was too heavily focused on theory. She did take a couple of classes in it, but the graphic design major was more focused on building prototypes. Her graphic design major didn't teach her how to do anything - she said that you're on your own, and you have to figure out how to show off your ideas. The major appealed to her at the time because of that reason. Now Helen thinks majoring in computer science would have been really helpful for her career. Charles points out that you don't have to have a computer science degree to do this work. Helen agrees; it can be wasted on you if you don't have the right enthusiasm to learn everything. Both say that you can get the education you want through self-education. Helen explains that so much of successful programming is good communication - this can be learned in college, while the specifics of how to code can be learned later. How do you get from a graphic design major to "serious programming?" Helen doesn't know how serious the programming she does is now. Her first real job was at Capital One as a front-end developer on their design team. She was doing prototypes and communicating between the design and production/engineering teams. She realized that nobody knew how to write JavaScript when trying to communicate between the two teams, so she decided that she should learn. A lot of the engineers came to the same realization at the same time. She started to write React as she was leaving Capital One. Everyone was trying to improve his or her JavaScript chops at the same time. Did you get into Angular or React at Capital One? When she first started at Capital One everyone was writing Angular. She wrote a lot of Angular in the beginning of her work. Most of the prototypes could be solved with React. Near the end of her time, she started using a lot of React. What do you see is the difference between Angular and React? Angular solves a lot more problems than React. It brings logic to the client side. React is only about solving visual problems. That's why it appealed to Helen. The design team she worked with was all about solving visual problems. Why did you choose the front end? Helen mainly chose it because she was a graphic design major. She believes that because the web is so accessible that it is the easiest thing. She also thinks the front end is fun. How'd you wind up at Mozilla? She met James Long through a mutual friend. Once they met, he thought she'd be a good addition to their team. He told her why it'd be a good switch for her - they were doing React work and they were looking for someone to understand problems that engineers go through. What do they use React on? She was on the browser team. The front-end of the developer tools was a JavaScript application that wasn't Angular. They were working on moving it to become a more documented framework. They wanted to use Redux and React. The team was converting it panel by panel. What made you decide you were going to go freelance? Helen had been missing things that she had done in college such as branding and illustration work. She had done some illustration work while at Firefox. She ultimately wanted to do a variety of different things instead of just product work. What gave her courage to go into freelance work was that James Long was also going freelance at the same time, so she thought that she was in good company. She also is related to a lawyer, so it wasn't as scary filing the paperwork because she had someone to ask for help during the process. What contributions do you feel like you've made to the JavaScript community? Helen believes that the highest impact work she has done has been on the Firefox browser. She didn't write a lot of code, but feels like what she did write is being used by a lot of people. She is most proud of the CSS grid because she says that it is exciting for people who do layout stuff on the web. What are you working on now? Helen started her own business at the beginning of the year. She is figuring out how she wants her skills to grow and with what kind of clients she wants to work. She has a lot of side projects, one being what she calls an art project. She is translating JPEG to Pixel art. She is taking NeoPixels, which are little programmable LEDs, and taking a matrix of values and displaying them on a sight board. With everything that's out there in JavaScript, how do you keep current? Helen answers that she doesn't. She tries to stay current with the tools she is using, which is React. She doesn’t try to be good at everything because she is also a designer, so she says that she has to pick and choose what she stays current on. Charles says that is what he tells people to do. There is so much out there that there is no way that anyone is going to stay current on everything. He says to keep current on what you are doing specifically. Picks Helen: Wonder Woman http://wonderwomanfilm.com Debt: The First 5,000 Years https://www.amazon.com/Debt-First-5-000-Years/dp/1612191290 Charles: JavaScript Jabber Slack Room https://devchat.tv/javascript-jabber-slack Monthly Webinars https://devchat.tv/webinars Angular Remote Conf https://devchat.tv/conferences/angular-remote-conf-2017 Links Helen V Holmes Twitter https://twitter.com/helenvholmes Full Article
en JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen By devchat.tv Published On :: Tue, 25 Jul 2017 07:00:00 -0400 JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen This 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. Picks Charles 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'Neal The Circle Spontaneity/Happiness: AJ tells a story about a woman he saw running through sprinklers. Oh the places you'll go by Dr. Seuss: AJ talks about a journal entry he read at a yard sale. Mike Ammerlaan Super hot VR on Oculus Rift Vesa Juvonen Family A big thanks to Microsoft, DotNetRocks, and Build! Full Article
en JSJ 278 Machine Learning with Tyler Renelle By devchat.tv Published On :: Tue, 12 Sep 2017 08:00:00 -0400 Tweet this Episode Tyler Renelle is a contractor and developer who has worked in various web technologies like Node, Angular, Rails, and much more. He's also build machine learning backends in Python (Flask), Tensorflow, and Neural Networks. The JavaScript Jabber panel dives into Machine Learning with Tyler Renelle. Specifically, they go into what is emerging in machine learning and artificial intelligence and what that means for programmers and programming jobs. This episode dives into: Whether machine learning will replace programming jobs Economic automation Which platforms and languages to use to get into machine learning and much, much more... Links: Raspberry Pi Arduino Hacker News Neural Networks (wikipedia) Deep Mind Shallow Algorithms Genetic Algorithms Crisper gene editing Wix thegrid.io Codeschool Codecademy Tensorflow Keras Machine Learning Guide Andrew Ng Coursera Course Python R Java Torch PyTorch Caffe Scikit learn Tensorfire DeepLearn.js The Singularity is Near by Ray Kurzweil Tensorforce Super Intelligence by Nick Bostrom Picks: Aimee Include media Nodevember Phone cases AJ Data Skeptic Ready Player One Joe Everybody Lies Tyler Ex Machina Philosophy of Mind: Brains, Consciousness, and Thinking Machines Full Article
en JSJ 285 : Finding a Job Even If You're Not a Senior Developer by Charles Max Wood By devchat.tv Published On :: Wed, 01 Nov 2017 17:09:00 -0400 Panel: Charles Max Wood In this episode of JavaScript Jabber, Charles does a solo episode talking about entrepreneurship and the topic/course on “How to Get a Job.” This is an informative episode for those looking for a job as a developer and how to prepare your resume for your career search. Charles covers the core pieces of the course and specific areas of tailoring your credentials for the job you want to acquire. In particular, we dive pretty deep on: How do I get a great job? Companies are only hiring Senior Devs. Your selling point as a Jr. Dev. Framing your experience for the companies to better see your experience. I don’t want a ( this kind of boss) Feeling like you are making a difference in your job. Who do you want to work for, with, where, and how, etc? Working in a facility or remotely. What do you want? Check out the meet-up places or workplaces (WeWork), Glassdoor Check out the people who work that these companies, LinkedIn. Check out company’s Slack rooms, forum, etc. to make connections Visit the companies personally Look into contacting the Meetup Organizers Building rapport Resume mistakes - how to properly format it so it is skim-able Top 3 bullet points and tailor you resume for each job Unnecessary material in your resume - again tailor to the company Important material to include on your resume, contributions on projects The cover letter - How to do this correctly with a personal touch What to do when you get the interview - the offer! And much more! Links: devchat.tv/get-a-coder-job-full-accessfull-access WeWork Expert Salary Negotiation Full Article
en JSJ 286: Creating a CSS-in-JS Library from Scratch and Emotion with Kye Hohenberger By devchat.tv Published On :: Tue, 07 Nov 2017 22:33:00 -0500 Panel: Amiee Knight Charles Max Wood Special Guests: Kye Hohenberger In this episode, JavaScript Jabbers speak with Kye Hohenberger. Kye is a developer and co-founder of Side Way. One of Kye’s most notable works and library is Emotion, a CSS and JS library. Kye talks about what CSS and JS library is about in the context of the Emotion library system. Kye discusses why this is practical for the writing process, in comparison to other types of tools that do similar jobs. Kye explains the how this tool reduces the number of lines of code and is compact and clearer. In particular, we dive pretty deep on: What is a CSS and JS library? Controlling CSS with JS, what does this solve? Style bugs What kind of styling are you using vs. complex styles? Media query A more declarative style Using Sass Where do you see people using this? Class names and you can apply to anything How Emotion works! Style tags Object styles What are some of the problems you are solving React Emotion - dynamic styles How does this compare to other style components? Glamor Styles How do you test something like this? Just Glamor React with Emotion Can people use the Babel plugin Pure flag and function calls And much more! Links: Emotion.sh Emotion-js/emotion emotion.now.sh @TKH44 Picks: Amiee Article on Medium Antibiotics and Steroids RX Bars Charles Disney Emoji Blitz How To Get A Job - JavaScriptJabber.com Kye Styled System Face Paint Aussie Bites Full Article
en JSJ 290: Open Source Software with Dirk Hohndel - VMWare Chief Open Source Officer By devchat.tv Published On :: Tue, 05 Dec 2017 06:00:00 -0500 Panel: Charles Max Wood Aimee Knight Corey House Joe Eames Special Guests: In this episode, JavaScript Jabber speaks with Dirk Hohndel about Open Source Software. Dirk is the Chief Open Source Officer at VMWare and has been working with open source for over 20 years. Dirk duties as the Chief Open Source Officer is to engage with the open source community and help promote the development between the community, companies, and customers. Dirk provides historical facts about open sources to current processes. The discussion covers vision and technological advances with languages, security, and worries of using open source software, view/consumption and burnout on maintaining a project. This is a great episode to learn about more different avenues of Open Source. In particular, we dive pretty deep on: What does the Chief Open Source Officer do? What is really different and has stayed the same in open source? Technological advances Good engineering and looking ahead or forward 100 million lines of code running a car… This is in everything.. Production environments Security Bugs in the software and the security issues Scaling and paying attention Where should we be worried about open source Notation and data sets Write maintainable software How does VMWare think about open source? View and Consumption of open source The burnout of open source projects - how to resolve this abandonment To much work to maintain open source - not a money issue Scaling the team workload not the money Contribution and giving back Companies who do and don’t welcome open source What to do to make a project open source? Adopting an API And much more! Links: @_drikhh VMWare Drikhh - everywhere! https://github.com/dirkhh Picks: Aimee De Contact Dodow Dirk Track This Critical Thinking Charles Nicholas Zakas - Books Corey Fun Fun Function Show Joe Dice Forge Concept of empathy Full Article
en MJS 039: Tyler Renelle By devchat.tv Published On :: Wed, 13 Dec 2017 06:00:00 -0500 Panel: Charles Max Wood Guest: Tyler Renelle This week on My JavaScript Story, Charles speaks with Tyler Renelle. Tyler is a contractor and developer who has worked in many web technologies like Angular, Rails, React and much more! Tyler is a return guest, previously on Adventure in Angular and JavaScript Jabber talking Ionic and Machine learning. Tyler has recently expanded his work beyond JavaScript and is on the show to talk his interest in AI or Artificial intelligence and Machine Learning. Furthermore, Tyler talks about his early journey as a game developer, web developer, and work with some content management systems, and more recently, his development in various technologies. In particular, we dive pretty deep on: Writing games out of college Studies computer science in college Did web development to pay for college working with PHP and ASP Content management Working with various technologies Working with React, is this it? Problems React has solved with web apps What is the next big innovation? View Creating Podcasts Machine Learning Specialized application of AI NLP Never use his computer science degree as a web developer You don’t study code to be a developer AI and machine learn is based on Computer Science Tensor Flow Data Skeptic - podcast Performance Graphics cards Philosophy of Consciousness The subjective experience Job displacement phenomenon and much, much more! Links: http://ocdevel.com http://ocdevel.com/podcasts/machine-learning Tensor Flow Data Skeptic - podcast https://devchat.tv/js-jabber/jsj-278-machine-learning-tyler-renelle https://www.linkedin.com/in/lefnire Picks Tyler The Great Courses Charles CES Email beforehand and set up an appointment VRBO.com Autonomous.ai Full Article
en JSJ 295: Developers as Entrepreneurs with Ryan Glover By devchat.tv Published On :: Tue, 09 Jan 2018 00:07:00 -0500 Panel: Charles Max Wood Cory House Joe Eames Aimee Knight Special Guests: Ryan Glover In this episode, JavaScript Jabber panelist speak with Ryan Glover. Ryan is on JavaScript Jabber to talks about Entrepreneurship as a developer. Ryan runs Clever Beagle in Chicago Illinois. Clever Beagle is a mentorship company that helps people build their first software Product. Ryan and the panel discuss the many roads of entrepreneurship, startup business ideas, servicing and teaching the community, how to’s, and psychological challenges, hiring, seeing your ideas through to the end, and privilege. In particular, we dive pretty deep on: How do you get started as an entrepreneur? Clever Beagle The Meteor Chef Where are people getting stuck on the builds? Fear, unknowns Simple, but not easy Drive and ability to step into the unknown Survival of the fittest Hire before you are already Losing your marbles Starting on a smaller scale How do I know my idea is going to work? Book - Brick by Brick Multiple lines of business Managing a portfolio of business Revenue streams Marketing Quitter When do I quit? 6-12 months of cash before you quit Making mistakes in entrepreneurship? Be a reader and study Go out a read books! Experiential not taught Luck and Privilege Video - Life of Privilege Explained in a $100 Race Procrastinate on Purpose And much more! Links: Clever Beagle The Meteor Chef https://www.linkedin.com/in/ryangglover http://www.ryanglover.net Brick by Brick Quitter Procrastinate on Purpose Do Thing That Don’t Scale @rglover Picks: Cory The Power of Moments The 50th Law Charles ReactDevSummit.com Indiegogo for Dev Chat .NetRocks Aimee Life of Privilege Explained in a $100 Race Joe Everybody Lies Murder on the Orient Express Ryan Turning Pro - Steven Pressfield series The Power of Beliefs in Business Full Article
en JSJ 296: Changes in React and the license with Azat Mardan By devchat.tv Published On :: Tue, 16 Jan 2018 11:47:00 -0500 Panel: Charles Max Wood Cory House Joe Eames Aimee Knight Special Guests: Azat Mardan In this episode, JavaScript Jabber panelist speak with Azat Mardan. Azat is a return guest, previously on JSJ Episode 230. Azat is an author of 14 books on Node JS, JavaScript, and React JS. Azat works at Capital One on the technology team. Azat is the founder and creator of Node University. Azat is on the show to talk about changes in React and licensing. Some of the topics cover Facebook, licensing with React, using the wrong version of React, patent wars, and much more in-depth information on current events in React. In particular, we dive pretty deep on: Facebook - Licensing with React Using the Wrong version of React in some companies BSD licensing Patent wars Facebook developing React Difference in Preact and Inferno Rewriting applications What did Capital One do about the changes? React 16 Pure React Was the BSD patents - Med and Sm Companies Patents explained React Developers at Facebook Fiber - New Core Architecture And much more! Links: http://azat.co https://node.university https://devchat.tv/js-jabber/230-jsj-node-at-capital-one-with-azat-mardan Picks: Cory Axel Rauschmayer post Prettier Charles Indiegogo for Dev Chat forum.devchat.tv Aimee Dev Tees Hacker News - Question on Stack Exchange and Estimates Joe Heroku El Camino Christmas Azat PMP Azat - Short Lecture Full Article
en MJS 044: Ben Coe By devchat.tv Published On :: Wed, 17 Jan 2018 06:00:00 -0500 Panel: Charles Max Wood Guest: Ben Coe This week on My JavaScript Story, Charles speaks with Ben Coe. Ben is the co-founder of attachments.me. Currently, work for NPM, and had worked for Freshbooks where he began his professional development career. Ben talks about his journey into programming and learning JavaScript, and the many experiences into his successful dev career. Ben shares his contributions to the Javascript community and the open source world with technologies like Yargs and InstanbulJS. In particular, we dive pretty deep on: How did you get into programming? Noodling around with old computers from Waterloo Geo cites How did you get into Javascript? Working at Freshbooks Backend infrastructure at NPM How did you end up working at NPM? Operations person at NPM Dev Ops What was it like being there in the early days? Automation Yargs InstanbulJS Product management at NPM C8 What is next? and much, much more! Links: https://github.com/bcoe @BenjaminCoe http://blog.npmjs.org/post/81600398588/npm-install-ben-coe-g Yargs InstanbulJS Picks Ben https://www.hackillinois.org C8 tool Full Article
en JSJ 297: Scrollytelling with Russell Goldenberg and Adam Pearce By devchat.tv Published On :: Tue, 23 Jan 2018 18:45:00 -0500 Panel: Charles Max Wood Joe Eames Aimee Knight Special Guests: Russell Goldenberg and Adam Pearce In this episode, JavaScript Jabber panelist speak with Russell Goldenberg and Adam Pearce Russell creates visualizations, interactive graphics, and documentaries for the web. Currently an editor at The Pudding. Adam is a graphics editor at The New York Times and a journalist engineers/developer Russell and Adam are on the show to talk about what Scrollytelling is, as well as Scrollama. Scrollama is a modern and lightweight JavaScript library for scrollytelling using IntersectionObserver in favor of scroll events. This is a great episode to understand another technology/tool created with JavaScript. In particular, we dive pretty deep on: What is Scrollytelling! Graph Scroll library What is the intersection Observerable? How long does it take to build an interactive graphic…? How do you test something like this? Test on a lot of different devices Can you do automated testing? Do you have to understand the use cases or can you implement quickly? Recommendation for getting started? Is this a skill set people have to have before that some on board? How do design these interactions? Scroll jacking What JS developers should know about this technology. Position sticky What are other uses cases? What can devs use it for? Tax calculator And much more! Links: https://github.com/russellgoldenberg/scrollama https://pudding.cool/process/introducing-scrollama/ @codenberg @adamrpearce https://pudding.cool/ http://russellgoldenberg.github.io https://github.com/1wheel?direction=desc&sort=created&tab=stars https://roadtolarissa.com Picks: Adam Dominion - Broad Game Charles Smoker Tiny Epic Galaxies Indiegogo Dev Chat TV Aimee Deadlines Quest Protein Powder Joe Giving! Board Game - Azul Russel Crokinole Bust Out Full Article
en JSJ 299: How To Learn JavaScript When You're Not a Developer with Chris Ferdinandi By devchat.tv Published On :: Tue, 06 Feb 2018 20:10:00 -0500 Panel: AJ O’Neal Joe Eames Aimee Knight Special Guests: Chris Ferdinandi In this episode, JavaScript Jabber panelist speak with Chris Ferdinandi. Chris teaches vanilla JavaScript to beginners and those coming from a design background. Chris mentions his background in Web design and Web Develop that led him JavaScript development. Chris and the JSJ panelist discuss the best ways to learn JavaScript, as well as resources for learning JavaScript. Also, some discussion of technologies that work in conjunction with vanilla JavaScript. In particular, we dive pretty deep on: Teaching JavaScript - Beginners and Design patrons Web Design and Web Development CSS Tricks Todd Motto How to do jQuery Things without jQuery Doing things like mentors (Todd) When JavaScript makes sense. CSS is easier to learn then JS? Being good at CSS and JS at the same time? How about Node developers? jRuby, DOM Documentation And much more! Links: https://github.com/cferdinandi https://gomakethings.com @ChrisFerdinandi https://www.linkedin.com/in/cferdinandi Picks: AJ Discover Card Mistborn Aimee Your Smart Phone is Making You Stupid… Crypto Currency Joe Mystic Vale Kedi Chris https://gomakethings.com Teva Mush Full Article
en JSJ 301: CSS Grids: The Future of Frontend Layout with Dave Geddes By devchat.tv Published On :: Tue, 20 Feb 2018 06:00:00 -0500 Panel: Charles Max Wood Aimee Knight Cory House AJ O'Neal Joe Eames Aaron Frost Special Guests: Dave Geddes In this episode, the JavaScript Jabber panelists talk with Dave Geddes about CSS Grids. Dave quit his job about a year ago and has been living the entrepreneur and programmer life since then. Now, he builds mastery games to help people learn CSS. Dave discusses the differences between Flexbox and CSS Grid and how the games that he creates can help people learn CSS Grid in a fun and interactive way. In particular, we dive pretty deep on: CSS Mastery games FlexboxZombies.com GridCritters.com Uses spaced repetition and delayed recall to learn CSS Grid Flexbox CSS Grid as the cake and Flexbox as the frosting Edge spec What Flexbox can do Sub-Grids Geddski.com Nesting Grids Old Grid vs New Grid layout Why would you move from Flexbox to CSS Grid? CSS Grid tools GridByExample.com Education and Gamification Pick a UI that interests you For a discount on Grid Critters: enter JS Jabber for 20% off And much, much more! Links: Linode FlexboxZombies.com GridCritters.com Geddski.com GridByExample.com FreshBooks @Geddski Picks: Charles R Pods Earphones Aimee NEU Cleanse “At Age 6, Girls Are Less Likely to Identify Females As ‘Really, Really Smart’” Cory Cory Tweet AJ How to Start a Startup Made in America by Sam Walton Joe The Dungeoneers by John David Anderson NG Conf Aaron Fire and Fury by Michael Wolff Dave They Are Billions Full Article
en JSJ 303: Test Coverage Tools with Ben Coe, Aaron Abramov, and Issac Schleuter By devchat.tv Published On :: Tue, 06 Mar 2018 06:00:00 -0500 Panel: Charles Max Wood Aimee Knight Corey House AJ O'Neal Special Guests: Ben Coe, Aaron Abramov, and Issac Schleuter In this episode, the JavaScript Jabber panelists talk with Ben Coe, Aaron Abramov, and Issac Schleuter about test coverage and testing tools. They talk about the different tools and libraries that they have contributed to the coding community, such as NYC, conf, and Jest. They also discuss what test coverage is actually about and when using test coverage tools is necessary. In particular, we dive pretty deep on: What have you contributed to the testing tools community? npm NYC tool and instanbul project conf Jest These libraries were developed to be easy and have “batteries included” False positives with test coverage Encourage testing practices that don’t practice in a superficial way Test coverage is about making sure you test every state a public API can get into Think through the test you’re writing first Barriers against testing Don’t spike the code too quickly Provides guardrails for newer developers to contribute to open source projects Use tests to understand the system How to spend your time better When you need tests Value is very short term TDD And much, much more! Links: @BenjaminCoe @AaronAbramov_ Issac’s GitHub Picks: Charles React Roundup Views on Vue Adventures in Angular React Dev Summit 2018 Aimee Galentine’s Day Dnote CLI AJ The Hero of Ages by Brandon Sanderson Corey We are hive project guidelines Tip: You can install node as a dependency on your project Ben Hack Illinois 2018 C8 Aaron Reason Issac The Tap 100 Krypton App Friendly Fire Podcasts Full Article
en JSJ 308: D3.js with Ben Clinkinbeard By devchat.tv Published On :: Tue, 10 Apr 2018 06:00:00 -0400 Panel: Joe Eames Cory House Aimee Knight Special Guests: Ben Clinkinbeard In this episode, the JavaScript Jabber panelists talk about D3.js with Ben Clinkinbeard. D3.js is a JavaScript library that has you use declarative code to tell it what you want and then it figures out all of the browser inconsistencies and creates the notes for you. He talks about the two main concepts behind D3, scales and selections, which once you understand make D3 a lot more user friendly. He then touches on SPGs and discusses his Learn D3 in 5 Days course. In particular, we dive pretty deep on: What is D3.js? Stands for Data Driven Documents JavaScript How much of the learning curve is attributed to learning D3? SPG 2 main concepts behind D3: scales and selections Is learning about SPGs a prerequisite to leaning D3? How serious are you talking when saying idiosyncrasies? SPG tag Understanding positioning in SPG Positions with CSS transforms Are you required to use SPG? Not required to use SPG with D3 Canvas SPG is vector based SPG utility function Responseivefy Learn D3 in 5 Days course Is there and overlap with D3 and React? And much, much more! Links: D3.js JavaScript Responsivefy Learn D3 in 5 Days course React @bclinkinbeard Ben’s GitHub Picks: Cory React cheat sheet “Why software engineers disagree about everything” by Haseeb Qureshi Joe Eames “JavaScript vs. TypeScript vs. ReasonML” by Dr. Axel Rauschmayer Aimee “How To Use Technical Debt In Your Favor” Neuroscience News Twitter Ben ComLink Full Article
en JSJ 309: WebAssembly and JavaScript with Ben Titzer By devchat.tv Published On :: Tue, 17 Apr 2018 06:00:00 -0400 Panel: Charles Max Wood Cory House Aimee Knight Special Guests: Ben Titzer In this episode, the JavaScript Jabber panelists discuss WebAssembly and JavaScript with Ben Titzer. Ben is a JavaScript VM engineer and is on the V8 team at Google. He was one of the co-inventors of WebAssembly and he now works on VM engineering as well as other things for WebAssembly. They talk about how WebAssembly came to be and when it would be of most benefit to you in your own code. In particular, we dive pretty deep on: Ben intro JavaScript Co-inventor of WebAssembly (Wasm) Joined V8 in 2014 asm.js Built a JIT compiler to make asm.js faster TurboFan What is the role of JavaScript? What is the role of WebAssembly? SIMD.js JavaScript is not a statically typed language Adding SIMD to Wasm was easier Easy to add things to Wasm Will JavaScript benefit? Using JavaScript with Wasm pros and cons Pros to compiling with Wasm Statically typed languages The more statically typed you are, the more you will benefit from Wasm TypeScript Is WebAssembly headed towards being used in daily application? Rust is investing heavily in Wasm WebAssembly in gaming And much, much more! Links: JavaScript V8 WebAssembly asm.js TurboFan TypeScript Rust WebAssembly GitHub Ben’s GitHub Picks: Charles Ready Player One Movie DevChat.tv YouTube Alexa Flash Briefings: Add skill for “JavaScript Rants” Cory npm Semantic Version Calculator Kent Beck Tweet Aimee MDN 418 Status code Quantity Always Trumps Quality blog post Ben American Politics Full Article
en MJS 059: Merrick Christensen By devchat.tv Published On :: Wed, 02 May 2018 06:00:00 -0400 Panel: Charles Max Wood Guest: Merrick Christensen This week on My Angular Story, Charles speaks with Merrick Christensen. Christensen works at a company called Webflow, where they try to empower people to create software without code. The company is similar to Squarespace or Wix, except they give 100% design control to the client. Christensen talks about his journey into programming, starting by creating websites for his childhood band. He moved on from Microsoft to Dreamweaver, and his Dad got him started with some freelance jobs to create websites for people, which really sparked his interest. Christensen discusses his path to where he is as a programmer today. In particular, We dive pretty deep on: How did you get into programming? Getting into JavaScript Infogenix job Red Olive job using Flash Got into JavaScript through ActionScript Discovered Moo Tools Flex Steve Jobs says no Flash on iPhone Why Moo Tools and not jQuery? Liked flexibility of JavaScript How did you get into Angular? Angular was trendy at the time and was easier to use New code base with React Backbone Programming as an art form Webflow Meta-layers Working a remote job Framework Summit Angular, React, View, and Backbone And much, much more! Links: Linode.com/MyAngularStory Webflow Squarespace Wix Framework Summit @iamMerrick MerrickChristensen.com Picks: Merrick Sho Baraka Grid Critters Flex Zombies Charles Fresh Books Lyft Game Vice Audio-Technica 2100 Full Article
en JSJ 312: Hygen with Dotan Nahum By devchat.tv Published On :: Wed, 09 May 2018 14:57:00 -0400 Panel: Charles Max Wood Aimee Knight AJ ONeal Special Guests: Dotan Nahum In this episode, the JavaScript Jabber panelists discuss Hygen with Dotan Nahum. Dotan has worked within open source community, where he created Hygen. They talk about what Hygen is, how it came to be, and code generators in general. He was inspired by the Rails generator to create his own generator and took his inspiration from 12 years prior to creating Hygen. They also touch on how to share generators in separate packages and much more! In particular, we dive pretty deep on: Dotan intro What is Hygen? Code generators Rails in 2006 Ruby on Rails 15-minute blog video PHP and Python Carried Rails wow moment with him into creating Hygen Wanted Rails generators everywhere Can you also modify files? Took the good things from Rails generator The fact that front-end apps have architecture is new Redux The solution of generating code A component is a ray of files and assets JavaScript gives you great freedom A standardized way of doing components GraphQL Everything lives in the “day job” project How the Hygen template is formatted Can have a shell action Is there a way to share generators in a separate package? Go And much, much more! Links: Hygen Rails Ruby on Rails 15-minute blog video Python Redux JavaScript GraphQL Go @jondot Dotan’s GitHub Dotan’s Medium Picks: Charles Fluent Conf Hot Jar DevChat.tv Ethereum Aimee Deep-copying in JavaScript AJ Let’s Encrypt Nintendo Switch Breath of the Wild Dotan asdf Brew Cask Full Article
en JSJ 314: Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver LIVE at Microsoft Build By devchat.tv Published On :: Tue, 22 May 2018 08:32:00 -0400 Panel: Charles Max Wood Special Guests: Matt Hernandez and Amanda Silver In this episode, the JavaScript Jabber/Adventures In Angular, panelists discuss Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver at Microsoft Build. Amanda is the director of program management at Microsoft working on Visual Studio and VS Code. Matt works on a mix between the Azure and the VS Code team, where he leads the effort to build the Azure extensions in VS code, trying to bring JavaScript developers to Azure through great experiences in VS Code. They talk about what’s new in VS Code, how the Azure extension works, what log points are, and much more! In particular, we dive pretty deep on: Amanda intro Matt intro What’s new in VS Code? VS Code core VS Live Share Shared Terminal Now have Linux support Live Share is now public to the world for free What would you use Shared Terminal for? Are there other things coming up in VS Code? Constantly responding to requests from the community Live Share works for any language How does the Azure extension work? Azure App Service Storage extension Azure Cosmos DB What are log points? All a part of a larger plan to create a better experience for JS developers Visual debuggers Is it the same plugin to support everything on Azure? Want to target specific services that node developers will take advantage of And much, much more! Links: Visual Studio VS Code Azure Live Share Azure Cosmos DB Microsoft Build Azure App Service Amanda’s GitHub @amandaksilver Matt’s GitHub @fiveisprime Picks: Charles Orphan Black Shout out to VS Code team Battle of the Books Matt The Customer-Driven Playbook by Travis Lowdermilk The Speed of Trust by Stephen M.R. Covey Yes, And by Kelly Leonard Digital Marketing For Dummies by Ryan Deiss Ed Gets His Power Back Kickstarter Amanda Microsoft Quantum Development Kit for Visual Studio Code Iggy Peck, Architect Tek by Patrick McDonnell Full Article
en MJS 066: Henrik Joreteg By devchat.tv Published On :: Wed, 20 Jun 2018 06:00:00 -0400 Panel: Charles Max Wood Guest: Henrik Joreteg This week on My JavaScript Story, Charles speaks with Henrik Joreteg. Henrik has been on JavaScript Jabber previously discussing &yet back in December of 2014 on episode 137. He has since then left &yet and now does independent consulting and works on his own projects. He first got into programming when he started a company that created online video tours for houses and he needed to teach himself programming in order to create the website. They talk about what led him to JavaScript, what he’s proud of contributing to the community, what he is working on now, and much more! In particular, we dive pretty deep on: JavaScript Jabber Episode 137 &yet How did you first get into programming? Liked computers as a child but didn’t want to spend his life on it originally Studied Business in college Create house touring video company Adobe ColdFusion How were you exposed to JavaScript? Gig as a ColdFusion developer jQTouch, jQuery, and Django Interested in building app-like experiences What have you done with JavaScript that you are proud of? Want to push the web into an app-like space Helped to create Ampersand.js Wrote Human JavaScript Created Simple WebRTC Promote web as an application platform What are you working on now? Redux and React New book: Human Redux Independent consulting Speedy.gift Redux-bundler And much, much more! Links: JavaScript Jabber Episode 137 JavaScript Jabber &yet JavaScript jQTouch jQuery Django Human JavaScript Ampersand.js Simple WebRTC Human Redux Redux React Speedy.gift Redux-bundler Henrik’s GitHub Joreteg.com @HenrikJoreteg Sponsors: Loot Crate FreshBooks Picks Charles Hogwarts Battle React Dev Summit JS Dev Summit Newspaper Theme on Themeforest Get a Coder Job Course Henrik Preact Parcel.js Rollup.js Space repetition systems Anki Full Article
en JSJ 321: Babel and Open Source Software with Henry Zhu By devchat.tv Published On :: Tue, 10 Jul 2018 06:00:00 -0400 Panel: Charles Max Wood Aimee Knight AJ ONeal Joe Eames Special Guests: Henry Zhu In this episode, the JavaScript Jabber panel talks to Henry Zhu about Babel and open source software. Henry is one of the maintainers on Babel, which is a JavaScript compiler, and recently left this job to work on doing open source full time as well as working on Babel. They talk about where Babel is today, what it actually is, and his focus on his open source career. They also touch on how he got started in open source, his first PR, and more! In particular, we dive pretty deep on: Henry intro Babel update Sebastian McKenzie was the original creator of Babel Has learned a lot about being a maintainer What is Babel? JavaScript compiler You never know who your user is Has much changed with Babel since Sebastian left? Working on open source How did you get started in pen source? The ability to learn a lot from open source Atrocities of globalization More decentralization from GitHub Gitea and GitLab Gitea installer Open source is more closed now His first PR JSCS Auto-fixing Prettier Learning more about linting You don’t have to have formal training to be successful Codefund.io Sustainability of open source And much, much more! Links: Babel JavaScript Gitea GitLab Gitea installer Prettier Codefund.io @left_pad Henry’s GitHub henryzoo.com Henry’s Patreon Sponsors Kendo UI Sentry Digital Ocean Picks: Charles Orphan Black Crucial Accountability by Kerry Patterson Aimee Desk with cubby holes for cats The Key to Good Luck Is an Open Mind blog post AJ Gitea Gitea installer Greenlock Joe Solo Justified Henry Celeste Zeit Day talks Full Article
en JSJ 322: Building SharePoint Extensions with JavaScript with Vesa Juvonen LIVE at Microsoft Build By devchat.tv Published On :: Tue, 17 Jul 2018 06:00:00 -0400 Panel: Charles Max Wood Special Guests: Vesa Juvonen In this episode, the JavaScript Jabber panel talks to Vesa Juvonen about building SharePoint extensions with JavaScript. Vesa is on the SharePoint development team and is responsible for the SharePoint Framework, which is the modern way of implementing SharePoint customizations with JavaScript. They talk about what SharePoint is, why they chose to use JavaScript with it, and how he maintains isolation. They also touch on the best way to get started with SharePoint, give some great resources to help you use it, and more! In particular, we dive pretty deep on: Vesa intro What is SharePoint? Has existed since 2009 People either know about it and use it or don’t know what it is Baggage from a customization perspective Why JavaScript developers? Modernizing development SharePoint Framework Microsoft Ignite Conference Is there a market for it? System integrators Angular Element and React React for SharePoint Framework back-end Supports Vue React Round Up Podcast How do you maintain isolation? What’s the best way to get started with SharePoint extensions? Office 365 Developer Program SharePoint documentation SharePoint YouTube What kinds of extensions are you seeing people build? And much, much more! Links: SharePoint JavaScript SharePoint Framework Microsoft Ignite Conference Angular Element React Vue React Round Up Podcast Office 365 Developer Program SharePoint documentation SharePoint YouTube @OfficeDev @vesajuvonen Vesa’s blog Vesa’s GitHub @SharePoint Sponsors Kendo UI Sentry Digital Ocean Picks: Charles Zig Ziglar Conversations with My Dog by Zig Ziglar Pimsleur Lessons on Audible Vesa Armada by Ernest Cline Full Article
en MJS 071: Kye Hohenberger By devchat.tv Published On :: Wed, 25 Jul 2018 14:28:00 -0400 Panel: Charles Max Wood Guest: Kye Hohenberger This week on My JavaScript Story, Charles speaks with Kye Hohenberger. Kye is a senior front-end engineer at Gremlin, where they do chaos as a service and break your stuff on purpose so that you can fix it and it hopefully won’t happen again. He also created the Emotion library, which is a CSS-in-JS library. He first got into programming because his Grandpa was always working on computers and Kye was curious about how they worked. They talk about how he got into JavaScript, what he's built in JavaScript that he’s proud of, what he’s working on now, and more! In particular, we dive pretty deep on: JavaScript Jabber Episode 286 Kye intro Works at Gremlin as a front-end engineer How did you first get into programming? Always had a burning curiosity for computers Worked on HTML first Worked with flash in High School Tried to major in Computer Science and dropped out of it Job in IT Wordpress maintenance Hooked on wanting to learn more Python with Django What was it that caught your attention? How did you get into JavaScript? Job at cPanel What led you to build something like Emotion? Didn’t like having to use the Sass compiler What problem were you trying to solve? Have you worked on anything else in JavaScript that you’re proud of? What are you working on now? APIs from Java to Node Wrote Qordoba apps for 2 years What made you switch from Angular to React? Learning WebPack And much, much more! Links: JavaScript Jabber Episode 286 Emotion Wordpress Python Django JavaScript cPanel Sass Node Angular React WebPack @tkh44 Kye’s GitHub Kye’s Medium Sponsors: Loot Crate FreshBooks Picks Charles Home Depot Tool Rentals Framework Summit Podcast Movement Kye The Console Log Brian Holt on Frontend Masters Emotion Team Full Article
en JSJ 324: with Kent Beck By devchat.tv Published On :: Tue, 31 Jul 2018 06:00:00 -0400 Panel: Charles Max Wood Joe Eames Aimee Knight Special Guests: Kent Beck In this episode, the JavaScript Jabber panel talks to Kent Beck. Kent left Facebook 4 months ago after working for them for 7 years and is now self-unemployed so that he can decompress from the stressful environment that he was a part of for so long. He now travels, writes, creates art, thinks up crazy programming ideas, and is taking a breather. They talk about what he did at Facebook, what his coaching engagement sessions consisted of, and the importance of taking time for yourself sometimes. They also touch on what he has learned from his experience coaching, how to create a healthy environment within the workplace, and more! In particular, we dive pretty deep on: Kent intro/update Ruby Rogues Episode 23 Worked at Facebook for 7 years What were you doing at Facebook? Unique culture at Facebook His strengths as a developer didn’t match with the organization’s Coaching developers TDD and Patterns Advantages as an old engineer What did coaching engagement consist of? Takes time to build trust Discharging shame Need permission to take care of what you need to Being at your best so you can do your best work Vacation in place What have you learned in your time working with people? The nice thing about coaching Everyone is different How do we create a healthy environment within the workplace? Mentor in Ward Cunningham What is it costing us? Why did you decide to leave? And much, much more! Links: Ruby Rogues Episode 23 @KentBeck kentbeck.com Kent’s GitHub Sponsors Kendo UI Sentry Digital Ocean Picks: Charles The Five Dysfunctions of a Team by Patrick Lencioni Crucial Accountability by Kerry Patterson Aimee n-back Joe Test Driven Development: By Example by Kent Beck Kent The Field Guide to Understanding 'Human Error' by Sidney Dekker Conspiracy: Peter Thiel, Hulk Hogan, Gawker, and the Anatomy of Intrigue by Ryan Holiday Full Article
en JSJ 327: "Greenlock and LetsEncrypt" with AJ O'Neal By devchat.tv Published On :: Tue, 21 Aug 2018 06:00:00 -0400 Panel: Charles Max Wood Joe Eames Special Guests: AJ O'Neal In this episode, the JavaScript Jabber panel talks to AJ O'Neal about Greenlock and LetsEncrypt. LetsEncrypt is a brand name and is the first of its kind in automated SSL and Greenlock does what Certbot does in a more simplified form. They talk about what led him to create Greenlock, compare Greenlock to Certbot, and what it’s like to use Greenlock. They also touch on Greenlock-express, how they make Greenlock better, and more! In particular, we dive pretty deep on: Greenlock and LetsEncrypt overview LetsEncrypt is free to get your certificate Why Charles uses LetsEncrypt Wildcard domains Certbot Why he originally created Greenlock Working towards home servers Wanted to get HTTP on small devices Manages a certificate directory Greenlock VS Certbot Greenlock can work stand alone The best use case for Greenlock Excited about how people are using his tool What is it like to use Greenlock? Working on a desktop client Greenlock-express Acme servers CAA record Making Greenlock better by knowing how people are using it Using Greenlock-express Let's Encrypt v2 Step by Step by AJ And much, much more! Links: LetsEncrypt Greenlock Certbot Greenlock-express Acme servers Let's Encrypt v2 Step by Step by AJ @coolaj86 coolaj86.com AJ’s Git Greenlock.js Screencast Series Greenlock.js Patreon Sponsors Kendo UI Sentry Digital Ocean Picks: Charles Take some time off AJ OverClocked Records Full Article
en MJS 082: Benjamin Hong By devchat.tv Published On :: Wed, 24 Oct 2018 06:00:00 -0400 Panel: Charles Max Wood Guest: Benjamin Hong This week on My JavaScript Story, Charles speaks with Benjamin Hong who is a Senior UI Developer at Politico where he lives in the Washington, D.C. area. He has worked with other companies including Treehouse, Element 84, and Udacity. Charles and Benjamin talk about his past and current projects, and how it’s different working for the government vs. working for a business. Check it out! In particular, we dive pretty deep on: 1:06 – Chuck: Tell us a brief introduction, please. 1:23 – Ben: I am a lead frontend developer at Politico. 1:43 – Chuck: It’s an area that can affect everyone. How did you get into developing? 1:52: Ben: I had everything you can think of to develop at first. 2:10 – Chuck: For me it was a TI90 calculator! 2:18 – Chuck: Was it somebody or something that pushed you towards this area? 2:32 – Ben: I wanted to change something with the theme, Googled it, and it went from there, and the Marquis Tag. 2:51 – Chuck: And the Blink Tag! The goodies. So you got the he HTML book – and what website did you build that was your first big project? 3:07 – Ben: It was fiddling around, but it was fortune cookie universe. 3:20 – Chuck: You will have to recreate it! 3:27 – Ben: I think this was 1993/1995 timeframe. 3:40 – Chuck: Yep, me too same time frame. If you had something move on your website it was so cool. You went to building... 4:02 – Ben: JavaScript was a roadblock for me. There was nobody to correct me. I had a JavaScript book and it was a massive failure. 4:33 – Chuck: You took a break and you came back? 4:40 – Ben: Oh – people will PAY you to do this?! 4:54 – Chuck: Did you go to college? 5:01 – Ben: Yes, I have a Master’s in a different field. I was always a tech junkie. I just wanted to put things together. 5:20 – Chuck: Take us through your journey through JS? 5:30 – Ben: I started off with the jQuery piece of it. I needed Java, and it took me awhile to wrap my head around it at first. Through the trial and process of trying to get into Angular and React, too. 6:19 – Chuck: Did you play with Backbone, Knockout, or Ember? 6:32 – Ben: I did do SOME Ember and some Knockout. Those were my first interactions. 6:49 – Chuck: What got you into the profession? How did you get from your Master’s to being a tech guy? 7:14 – Ben: From the Master’s field I learned a lot about human experience, and anted to breed the two together. Also, consulting and helping to build things, too. 7:44 – Charles: What was the career change like? 7:53 – Ben: I went to the federal government at first around the recession – it was good having a stable job. I was bored, though. While I was working for the government I was trying to get my foot in the door. From there I have been building my way up. 8:30 – Ben: I was working on Medicare.gov and then later... 8:46 – Charles: We won’t use the word “disaster”! What is it like to work for the government? 9:20 – Ben: Yep. The federal government is a different area because they are stake holders. They were about WHO owned the content, and who do we have to talk to get something approved. It was not product oriented like a business. I made my transition to Politico, because I wanted to find solutions and diversify the problems I was having. 10:31 – Chuck: Have you been there from the beginning? 10:39 – Ben answers the question. Ben: They were looking for frontend developers 10:54 – Chuck: You are the lead there now. What was that like with the transition? 11:08 – Ben talks about the beginnings stages of his time with Politico and the current situation. He talks about the different problems, challenges, and etc. 11:36 – Chuck: Do you consider yourself a news organization or? 11:47 – Ben: We have Politico Pro, too. I have been working with this site more so. There are updates about campaign and voting data. People will pay a fee. 12:25 – Chuck: Do they pain themselves as leaning one way or another or nonpartisan? 12:38 – Ben: We are objective and nonpartisan. 12:51 – Chuck: I know, I was hesitant to ask. What’s the mission of the company and into what you do? 13:09 – Ben: The projects get dumped to us and we are about solving the problems. What is the best route for solving it? I had to help pioneer the new framework into the tech staff is one of my roles. 13:48 – Chuck: What’s your tech stack? 13:55 – Ben: JavaScript and Vue.js. We are experimenting with other software, too. 14:16 – Chuck: We should get you talking about Vue on the other show! Are you working at home? 14:32 – Ben answers the question. Ben: One thing I am helping with Meetup. Community outreach is important and I’m apart of that. 15:09 – Chuck: Yep, it’s interesting to see various fields into the tech world. I am not one of those liberal arts majors, I do have a computer science degree. It’s interesting to see the different perspectives. How little it is for someone to be able to dive-in right away. What are you working on? 16:09 – Ben: Meetup population and helping with the work at Politico. 16:27 – Chuck: Reusable components. Are those opensource or only internal? 16:41 – Ben: They are now opensource but we are seeing which portions can be opensource or not. 17:01 – Chuck: Different companies have come out and offered their opensource. Where do they find you? 17:20 – BenCodeZen! They are more than welcome to message me. 17:36 – Chuck: Any advice on newbies to this field? 17:46 – Ben: Attending those meetings and making those connections. 18:18 – Chuck: I have been writing a book on HOW to get a job as a coder. That’s the same advice that I am giving, too. 18:46 – Chuck: Picks! 18:51 – Advertisement – Fresh Books! 30-Day Trial! Links: React Angular Vue.js JavaScript Ember Elm jQuery BenCodeZen Ben’s LinkedIn Ben’s Crunch Base Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Charles Framework Summit – UT (Ember, Elm, and tons more!) Microsoft Ignite Code Badge Ben Conference in Toronto Conference in Atlanta, GA (Connect Tech) Conference in London – Vue Full Article
en MJS 084: Henry Zhu By devchat.tv Published On :: Wed, 07 Nov 2018 06:00:00 -0500 Panel: Charles Max Wood Guest: Henry Zhu This week on My JavaScript Story, Charles speaks with Henry Zhu who is working full-time on Babel! They discuss Henry’s background, past/current projects, Babel, and Henry’s new podcast. Check-out today’s episode to hear more! In particular, we dive pretty deep on: 0:00 – Advertisement: Get A Coder Job! 1:00 – Chuck: Today we are talking with Henry Zhu! You are the maintainer of Babel – and we have had you on the show before. Anything else? 1:25 – Henry: I used to work with Adobe and now live in NY. 1:44 – Chuck: Episode 321 we talked to you and you released Babel 7. Tell us about Babel, please. 2:01 – Henry: It’s a translator for programming languages and it’s a compiler. It only translates JavaScript to JavaScript. You would do this because you don’t know what your users’ are using. It’s an accessibility thing as well. 3:08 – Chuck: Later, we will dive into this some more. Let’s back-up: how did you get into programming? 3:22 – Henry: I think I was in middle school and I partnered with a friend for science class and we made a flash animation about earthquakes. Both of my parents worked in the field, too. They never really encouraged me to do it, but here I am. 4:07 – Chuck: How did you get into Java? 4:11 – Henry: I made some games and made a Chinese card game. Then in college I went to a bunch of Hackathons. In college I didn’t major into computer science, but I took a bunch of classes for fun. I learned about Bootstrap and did a bunch of things with that. 5:12 – Chuck: How did you settle on JavaScript? 5:28 – Henry: It was my experience – you don’t have to download anything. You can just open things up in the console and it’s easy to share. I think I like the visual part of it and their UI. 6;07 – Chuck: At some point you ran across Babel – how did you get into that? 6:17 – Henry: After college I wanted to do software. I threw out my degree of industrial engineering. I tried to apply to Google and other top companies. I applied to various places and picked something that was local. I met Jonathan Neal and he got me into open source. Through that, I wanted to contribute to Angular, but it was hard for me. Then I found a small issue with a linting error. After that I made 30 commits to Angular. I added a space here and there. JSES is the next thing I got involved with. There is one file for the rule itself and one for the test and another for the docs. I contributed there and it was easy. I am from Georgia and a year in I get an email through Adobe. They asked if I wanted to work through Enhance in Adobe. I moved to NY and started working here. I found JS LINT, and found out about Babel JS LINT. And that’s how I found about Babel. 9:24 – Chuck: Was Sebastian still running the project at the time? 9:33 – Henry. 10:53 – Chuck: It seems like when I talk with people that you are the LEAD on Babel? 11:07 – Henry: I guess so, because I am spending the most time on it. I also quit the job to work on it. However, I want people to know that there are other people out there to give you help, too. 11:45 – Chuck: Sebastian didn’t say: this is the guy that is the lead now. But how did that crystalize? 12:12 – Henry: I think it happened by accident. I stumbled across it. By people stepping down they stepped down a while ago and others were helping and making changes. It was weird because Sebastian was going to come back. It’s hard when you know that the person before had gotten burnt-out. 14:28 – Chuck: What is it like to go fulltime on an open source project and how do you go about it? 14:34 – Henry: I don’t want to claim that you have to do it my way. Maybe every project is different. Maybe the focus is money. That is a basic issue. If your project is more of a service, then direct it towards that. I feel weird if I made Babel a service. For me it feels like an infrastructure thing I didn’t want to do that. I think people want to do open source fulltime, but there are a lot of things to take into consideration. 16:38 – Chuck. 16:50 – Guest. 16:53 – Henry. 16:55 – Chuck: How do you pay the bills? 17:00 – Henry: Unlike Kickstarter, Patreon is to help donate money to people who are contributing content. If you want to donate a lot then we can tweak it. 19:06 – Chuck: Is there something in particular that you’re proud of? 19:16 – Henry: I worked on JS ES – I was a core team member of that. Going through the process of merging them together was quite interesting. I could write a whole blog post about that. There are a lot of egos and people involved. There are various projects. Something that I have been thinking about... 20:53 – Chuck: What are you working on now? 20:58 – Henry: We released 7 a while ago and 7.1. Not sure what we are going to do next. Trying to figure out what’s important and to figure out what we want to work on. I have been thinking long-term; for example how do we get reviewers, among other things. I can spend a lot of time fixing bugs, but that is just short-term. I want to invest ways to get more people in. There is a lot of initiatives but maybe we can do something new. Maybe pair with local universities. Maybe do a local Meetup? Learning to be okay with not releasing as often. I don’t want to put fires out all day. Trying to prioritize is important. 23:17 – Chuck. 23:2 – Henry: Twitter and other platforms. 23:37 – Chuck: Picks! 23:38 – Advertisement – Fresh Books! 30-Day Trial! 24:45 – Picks. Links: React Angular Vue.js JavaScript Ember Elm jQuery Henry Zhu’s Twitter Henry Zhu’s GitHub Henry Zhu’s Website Patreon to Donate Towards Babel Babel Babel JS Sponsors: Cache Fly Get A Coder Job Fresh Books Picks: Henry My own podcast – releasing it next week Podcast about Faith and Open Source Charles Ruby Rogues’ cohost + myself – Data Podcast – DevChat.Tv Reworking e-mails Full Article
en MJS 087: Rob Eisenberg By devchat.tv Published On :: Wed, 28 Nov 2018 06:00:00 -0500 Panel: Charles Max Wood Guest: Rob Eisenberg This week on My JavaScript Story, Charles speaks with Rob Eisenberg who is a principal software engineer at InVision, and is the creator of Caliburn.Micro, Durandal, and Aurelia. Today, they talk about Rob’s past and current projects among other things. In particular, we dive pretty deep on: 1:40 – Chuck: Our special guest is Rob Eisenberg. We’ve had you on Adventures on Angular (09 and 80), JavaScript Jabber, and others like Episode 203. 2:36 – Rob: That was over the period of 4 years all of those podcasts. I am getting older. 2:50 – Chuck: Anything that you’ve done that you want to talk about? 3:04 – Rob: I am known for opensource work over the years. Maybe we can talk about my progression through that over the years. 3:25 – Chuck: How did you get into this field? 3:29 – Rob: When I was 8 years old my dad wanted to buy a computer. We went to Sears and we bought our first computer. You’d buy the disk drive and the keyboard looking unit. You could by a monitor, we didn’t, but we used a black and white TV for our monitor. Later we bought the colored monitor and printer. That’s where my fascination started. We set up the computer in my bedroom. We played games. I got intrigued that you could write code to make different games. It was just magical for me. As being an adult engineer I am trying to go back to that moment to recapture that magical moment for me. It was a great creative outlet. That’s how I first started. I started learning about Q basic and other flavors of Basic. Then I heard about C! I remember you could do anything with C. I went to the library and there wasn’t the Internet, yet. There were 3 books about C and read it and re-read it. I didn’t have any connections nor a compiler. When I first learned C I didn’t have a compiler. I learned how to learn the codes on notebook paper, but as a kid this is what I first started doing. I actually saved some of this stuff and I have it lying around somewhere. I was big into adventure games. That’s when I moved on C++ and printed out my source code! It’s so crazy to talk about it but at the time that’s what I did as a kid. In JHS there was one other kid that geeked-out about it with me. It was a ton of fun. Then it was an intense hobby of mine. Then at the end of HS I had 2 loves: computers and percussion. I was composing for music, too. I had to decide between music or coding. I decided to go with music. It was the best decision I ever made because I studied music composition. When you are composing for dozens of instruments to play one unified thing. Every pitch, every rhythm, and it all works together. Why this note and why that rhythm? There is an artistic side to this and academia, too. The end result is that music is enjoyed by humans; same for software. I did 2 degrees in music and then started my Master’s in Music. I then realized I love computers, too, how can I put these two together? I read some things on audio programming, and it stepped me back into programming. At this time, I was working in music education and trying to compose music for gamming. Someone said look at this program called C#! I don’t know cause...how can you get any better than C++?! In 2003 – I saw a book: teach yourself C# in 24 hours. I read it and I was enthralled with how neat this was! I was building some Windows applications through C#. I thought it was crazy that there was so much change from when I was in college. 17:00 – Chuck: You start making this transition to web? What roped you in? 17:25 – Rob: I realized the power of this, not completely roped in just, yet. Microsoft was working (around this time) with... 19:45 – (Continued from Rob): When Silver Light died that’s when I looked at the web. I said forget this native platform. I came back to JavaScript for the 2nd time – and said I am going to learn this language with the same intensity as I learned C++ and C#. I started working with Durandal. 21:45 – Charles: Yeah, I remember when you worked with the router and stuff like that. You were on the core team. 21:53 – Rob: The work I did on that was inspired by screen activation patterns. 23:41 – Rob (continued): I work with InVision now. 24:14 – Charles: I remember you were on the Angular team and then you transitioned – what was that like? 24:33 – Rob comments. 25:28 – Rob (continued): I have been doing opensource for about 13 years. I almost burned myself a few times and almost went bankrupt a few times. The question is how to be involved, but run the race without getting burned-out. It’s a marathon not a sprint. These libraries are huge assets. Thank God I didn’t go bankrupt but became very close. The more popular something if there are more varieties and people not everyone is so pleasant. It’s okay to disagree. Now what are the different opinions and what works well for your team and project? It’s important to stay to your core and vision. Why would you pick THIS over THAT? It’s a fun and exciting time if you are 28:41 – Charles: What are you 28:47 – Rob: InVision and InVision studio. It’s a tool for designing screens. I work on that during the day and during the night I work on Aurelia. 30:43 – Chuck: I am pretty sure that we have had people from InVision on a show before. 31:03 – Rob comments. Rob: How we all work together. 31:20 – What is coming in with Aurelia next? 31:24 – Rob: We are trying to work with as much backwards compatibility as we can. So you don’t see a lot of the framework code in your app code. It’s less intrusive. We are trying next, can we keep the same language, the same levels, and such but change the implementation under the hood. You don’t learn anything new. You don’t have new things to learn. But how it’s implemented it’s smaller, faster, and more efficient. We have made the framework more pluggable to the compiler-level. It’s fully supported and super accessible. Frameworks will come and go – this is my belief is that you invest in the standards of the web. We are taking that up a notch. Unobtrusiveness is the next thing we want to do. We’ve always had great performance and now taking it to the next level. We are doing a lot around documentation. To help people understand what the architectural decisions are and why? We are taking it to the next level from our core. It’s coming along swimmingly so I am really excited. We’ve already got 90% test coverage and over 40,000 tests. 37:33 – Chuck: Let’s get you on JavaScript Jabber! 38:19 – Chuck: Where can people find you? 38:22 – Twitter, and everywhere else. Blog! 39:17 – Chuck: Picks? 39:23 – Rob dives in! Links: jQuery Angular JavaScript Vue C++ C# InVision Aurelia Aurelia Blog by Rob Rob Eisenberg’s Twitter Rob’s Website Rob’s LinkedIn Rob’s GitHub Rob’s Episode 9 Rob’s Episode 80 Rob’s Episode 203 Sponsors: Get A Coder Job Fresh Books Cache Fly Picks: Rob Database: Orbit DB Robit Riddle The Wingfeather Saga Charles Used to play: Dungeons and Dragons Little Wizards Park City, UT VRBO Full Article
en JSJ 343: The Power of Progressive Enhancement with Andy Bell By devchat.tv Published On :: Tue, 11 Dec 2018 06:00:00 -0500 Panel: Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal Special Guest: Andy Bell In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out! Show Topics: 0:00 – Advertisement: KENDO UI 0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please. 2:00 – Guest: I am an independent designer and developer out in the U.K. 2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement. 2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works. 3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that? 3:28 – The guest talks about JavaScript, dependencies, among other things. 4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here? 5:09 – Guest: You can go really far back and make it work w/o CSS. 5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter? 6:48 – Guest. 8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users. 8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not. 9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here? 10:14 – Panelist chimes-in. 10:36 – Chris: I can take advantage of it even if I cannot afford a new machine. 10:55 – Panel: Where would this really matter to you? 11:05 – Chris: I do have a nice new laptop. 11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen. 11:37 – Chris: Or how about the All Trails app when I am on the trail. 11:52 – Guest. 12:40 – Chris: I can remember at the time that the desktop sites it was popular to have... Chris: Most of those sites were inaccessible to me. 13:17 – Guest. 13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them. 14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3). 15:47 – Chuck. 15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering. 17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action. 17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself. 18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements? 18:57 – Guest answers the question. 19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments. Hamburger menu is mentioned, too. 20:20 – Guest. 21:05 – Chris: Can we talk about code? 21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively? Aimee refers to his blog. 21:44 – Guest. 22:13 – Chuck: I use stock overflow! 22:20 – Guest. 22:24 – Chuck: I mean that’s what Chris uses! 22:33 – Guest (continues). 23:42 – Aimee. 23:54 – Chris. 24:09 – Chris 24:16 – Chris: Andy what do you think about that? 24:22 – Guest: Yes, that’s good. 24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring? 25:03 – Guest answers the question. The guest mentions modern CSS and modern JavaScript are mentioned along with tooling. 25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what? 26:57 – Guest: If it’s feasible do it and then set a timeline up. 27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test? 28:18 – Advertisement – Sentry.io 29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies? 30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way? 30:50 – Guest answers the question. 31:03 – Guest: You can pick out the big things. 31:30 – Chuck: I am using this feature in the browser... 31:41 – Guest. 31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do? Note: “Cutting the Mustard Test” is mentioned. 33:37 – Guest. 33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out. 34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop. 34:20 – Chuck and Chris go back-and-forth. 34:36 –Chris: Check out links below for my product. 34:54 – AJ: A lot of these things are in the name: progressive. 36:20 – Guest. 38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component? 39:14 – The guest gives us his definition of what a web component is. 40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode. 40:25 – Aimee. 40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar. 41:22 – Chris: Can someone please give us an example? A literal slideshow example? 41:45 – Guest answers the question. 45:07 – Chris. 45:12 – Guest: It’s a framework that just happens to use web components and stuff to help. 45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else? 46:39 – Chuck: Where do they go to learn more? 46:49 – Guest: Check out the Club! And my Twitter! (See links below.) 47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too! 49:16 – Aimee: Yeah, I’m on their podcast soon! 49:30 – Chuck: Picks! END – Advertisement: CacheFly! Links: JavaScript React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Past episode: AiA 115 Past episode: JSJ 120 Vue.js – Slots Using templates and slots – Article Web Components Club GitHub: Pwa – Starter – Kit Progressively Enhanced Toggle Panel Time Ago in under 50 lines of JavaScript GitHub: ebook-boilerplate Chris Ferdinandi’s Go Make Things Site Game Chops CNBC – Trump Article New in Node v10.12 Quotes Archive My Amazon Interview Horror Story DevPal.io Honest Work Relative Paths DevLifts Andy Bell’s Twitter Andy’s Website Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Aimee Hacker News - Programming Quotes My Amazon Interview Horror Story Chris Time Ago in Under 50 Lines of JavaScript E-Book Boiler Plate JSJABBER at gomakethings.com AJ Experimental Drugs Bill My Browers FYI New In Node,10.12 Arcade Attack Charles Getacoderjob.com Self-Publishing School MF CEO podcast Andy Devpay.io Honest.work Relativepath.uk Full Article
en JSJ 344: Inclusive Components with Heydon Pickering By devchat.tv Published On :: Mon, 17 Dec 2018 21:02:00 -0500 Panel: Charles Max Wood Aimee Knight Chris Ferdinandi Joe Eames Special Guest: Heydon Pickering In this episode, the panel talks with Heydon Pickering who is a designer and writer. The panel and the guest talk about his new book, which is centered on the topic of today’s show: inclusive components. Check out Heydon’s Twitter, Website, GitHub, and Mastodon social accounts to learn more about him. To purchase the book – go here! Show Topics: 0:00 – Advertisement: KENDO UI 0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the DevRev is available online to check it out. 1:30 – Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript! 2:13 – Chuck: We are talking today about...? 2:22 – Chris: He’s talking about “inclusive components” today! 2:41 – Guest: Traveling is very stressful and I wanted something to do on the plane. I’ve done this book, “Inclusive Design Patterns.” If you don’t want to buy the book you can go to the blog. I have been talking with Smashing Magazine. 5:40 – Panel. 5:47 – Guest: I approached Smashing Magazine initially. They didn’t think there was a market for this content at the time. They were very supportive but we will do it as an eBook so our costs our down. At the time, the editor came back and said that: “it was quite good!” We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn’t want to do the same book but I wanted to do it around “patterns.” Rewriting components is what I do all the time. I use Vanilla JavaScript. Backbone.js is the trendy one. 9:52 – Panel: The hard book did it get published? 10:02 – Guest: We are in the works and it’s all in the final stages right now. It has to go through a different process for the print version. 11:54 – Panel. 11:58 – (Guest continues about the editorial process.) 12:09 – Panel: They probably switched to TFS – it’s Microsoft’s. 12:23 – Guest: There was this argument on Twitter about the different processors. 13:35 – Chris: What are the ways that people are breaking accessibility with their code through JavaScript? 13:59 – Guest: The whole premise is that there aren’t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript – it’s just different ways of doing this/that, and hiding things. I am discounting things with Node or other stuff. Most of what we are doing, with interactive design, is showing and hiding. 18:37 – Chris: I have some specialty friends where they tell me where I’ve screwed up my code. For example Eric Bailey and Scott O’Hara but, of course, in very kind ways. What are some things that I can make sure that my code is going to work for many different people. 19:18 – Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that’s okay but there could be problems with this. 26:00 – Panel: That’s a great guideline. 26:05 – Chris: You talked about ARIA roles and it can be confusing. One side is: I don’t know when to use these and the other side is: I don’t know when NOT to use these so I’m going to use them for EVERYTHING! I guess both can be detrimental. What’s your advice on this topic? 27:00 – Guest: Scott is great and I would trust him to the end of the Earth about what he says. Guest mentions Léonie Watson and her talks about this topic. 29:26 – (Guest continues.) 29:36 – Advertisement – Sentry.io 30:31 – Chris. 30:40 – Guest: There is a lot of pressure, though, right? People wouldn’t blog about this if it wasn’t worthwhile. It doesn’t matter what the style is or what the syntax is. The guest talks about not throwing ARIA onto everything. 36:34 – Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility. 37:28 – Guest: Yes, of course. I think it’s important to make your interfaces flexible and robust to think and include people with disabilities. 39:00 – Guest mentions larger buttons. 40:52 – Panelists and Guest talk back-and-forth. 42:22 – Chris: It’s an accessibility and inclusivity element. I saw a dropdown menu and worked great on certain devices but not others. I could beat this horse all day long but the whole: what happens of the JavaScript file doesn’t load or just accordion options? 43:50 – Guest: It’s the progressive enhancement element. 44:05 – Guest: I think it’s worth noting. I think these things dovetail really nicely. 46:29 – Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don’t know if this is related or not? 47:03 – Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those. 47:27 – Aimee: But as someone who loves JavaScript...and then some very talented people taught me that you have to find the right tool for the job. 47:29 – Guest: I am the other way around – interesting. 52:50 – Chuck: Picks! 52:55 – Advertisement – Get A Coder Job! END – Advertisement: CacheFly! Links: JavaScript Backbone.js Microsoft’s TFS Léonie Watson React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Heydon’s GitHub Heydon’s Mastodon Heydon’s Book Medium Article on Heydon Heydon’s Website Heydon’s Twitter Sponsors: DevLifts Kendo UI Sentry CacheFly Picks: Joe Chris Ferdinandi's Blog Luxur board game Cypress.io Aimee Blog about interviewing Birthday Cake Quest Bar Chris Web Dev Career Guide: https://gomakethings.com/career-guide/ Use FREECAREER at checkout to get it for free Neapolitan Ice Cream Netflix Web Performance case study Charles Disney Heroes Battle Mode MFCEO Project Podcast Gary Lee Audio Experience Suggestions for JavaScript Jabber Heydon Bruck What is Mastodon and why should I use it? Full Article
en JSJ 348: EnactJS with Ryan Duffy By devchat.tv Published On :: Tue, 22 Jan 2019 06:00:00 -0500 Sponsors KendoUI Sentry use the code "devchat" for $100 credit Clubhouse CacheFly Panel Aimee Knight Aaron Frost Chris Ferdinandi Joe Eames Special Guest: Ryan Duffy In this episode of JavaScript Jabber, the panelists talk with Ryan Duffy who works on the EnactJS framework at LG Electronics. Ryan explains the framework in depth and answers all the questions about its design and implementation from the panelists and discusses some challenges faced along the way. Check it out! Show Notes: 00:28 – Advertisement - KendoUI 1:08 - Ryan introduces himself and explains a bit about the EnactJS framework. While giving some background, he says that it is the 3rd generation of web frameworks that supports apps on webOS and they started building Enact on top of React about two years ago. 2:00 - Aimee asks what exactly does webOS mean. Ryan answers that webOS was created by Palm for phones and related devices and it has several instances of chromium running on device with some service layer stuff. 2:36 - Aaron mentions that webOS was big when other operating systems were still coming up, and Ryan agrees saying that it didn’t get the adoption needed to make it successful later. 3:00 - Ryan says that he always loved building apps for webOS phones given the flexibility and ease coming from a web development background. 3:53 - Aaron asks on which other applications is webOS running other than TV. Ryan answers that TV is one of the major consumptions, and it also runs on certain robots such as the concierge ones, watches to some extent and a lot of projects internally, not yet released in the market. 4:50 - Aaron asks if the Enact framework is big internally at LG. Ryan replies that it is the primary framework used for apps running on webOS. 5:03 - Aaron enquires about the nature of adoption of Enact for third party or non-LG people, to which Ryan states that Enact remains the standard framework for people who are building apps. 5:32 - Joe joins in the conversation. 6:25 - Aaron remarks that given that webOS is used in latest robots, televisions, watches and other such apps, it sounds like they are heavily investing into it. Ryan affirms by saying that the webOS journey goes from Palm phones to HP tablets to finally coming to LG. He goes on to explain their team structure, stating that there are two major teams in play right now - the R&D team is in the US and the implementation team is in Korea. 8:00 - Aaron asks about the role their team plays in the app development. Ryan replies that his team is the stack team that forms the foundation for the apps and they take decisions on what the components should look like and similar tasks. The app teams based in Korea decide their menu based on those decisions. 8:35 - Aaron asks what exactly is meant by the Blink team. Ryan answers that the it’s the team that works with an LG customized version of chromium. 9:10 – Aaron then asks about his individual role in the team. Ryan says that he is one of the managers of the stack team and he’s been on the team for little more than 4 years. 9:30 - Aaron asks about the evolution of the framework over time. Ryan describes the historical background by saying that in the initial Enyo design the team built, was component based, and every tool needed to build single page apps had to be developed from scratch. He says that they felt the need to move on to an improved framework as they wanted to take advantage of the robust ecosystem that existed, so they ported component libraries of Enyo using the React toolset to form Enact. 11:43 - Aaron asks if Enyo then ceased to exist to which Ryan states that it is still around to some extent. 12:20 - Aaron asks if the team has something like “create Enact app” to create a new app internally, like React. Ryan mentions that Jason - a tooling and automation expert from their team has built a feature called V8 snapshot - which loads JavaScript into memory and takes a snapshot - can in turn be loaded by the TV to launch the app in order to achieve a faster load time. He says that their long-term goal is to increase compatibility with the ecosystem. 14:40 - Aaron asks if he can use the React CLI to create something for TV as a third-party developer. Ryan elaborates that CLI can be used to build, compile and bundle apps and there is another tool- SDK to bundle it for delivery to the TV. The app is tested fully in chrome, bundled and deployed to the TV. 15:25 - Aaron asks if choosing React was a natural decision for the team. Ryan explains that they researched on some component-based frameworks that were available at that time and found that React was the best choice. 17:30 - Aimee asks the reason for open sourcing the framework. Ryan mentions that Enyo always has been open source. He also remarks that the team does not get a lot of input from the community and would like to get more information about what’s working and what’s not and how they can contribute back. 19:40 - Aaron asks about the kind of apps can be built by using Enact except for TV. Ryan says that any kind can be built but the hesitation is that the UI library is specially designed for TV, so they may look different for other spaces like phones or other devices. 20:35 – Advertisement – Sentry – Use the code “devchat” to get two months free on Sentry’s small plan. 21:30 - Aaron asks what decisions around making apps are made by Enact for the developers. Ryan explains that the architectural pattern they have chosen is higher order components, and there is a lot of attention on render props that can be easily plugged into the apps. 22:48 - Aaron asks if the state part was built by the team on their own. Ryan answers in affirmative that everything in Enact is completely built by the team, no external states are used within the framework. No decisions are made in the data space yet. He mentions that they had tried to limit their Enact development effort in cases where the solution was already available unless they had a new perspective on the problem. 24:30 - Aaron remarks the idea of Enact being something like a webpack is becoming clearer for him and asks Ryan if his team is spending most of their time in building component libraries. Ryan affirms by explaining that Enact is designed in layers. He goes on to explain that focus management is a difficult problem to solve where the ability to navigate an application intuitively such as in the case of remote control is handled by a certain component. Also, as LG ships TVs all over the world, there are significant internationalization requirements. He then elucidates the TV centric moonstone library in detail and states that they took all the base capabilities from it and formed a UI layer. 27:26 - Aaron asks if moonstone is theme-able. Ryan says that it’s not and the UI layer in not styled. 28:40 - Chris asks, as someone who manages open source projects and builds tools, about the process of making decisions on the kind of components to include and challenges Ryan and his team faced in the open source space. 29:45 – Ryan says that they haven’t had the ideal open source experience yet. They do have a lot of discussions on API design and components but it’s a struggle to what to include and what to not. 31:25 - Chris shares his own experience while stating that finding a common ground is always hard especially when there is internal resistance in convincing people to use new software. Ryan says that internally their biggest struggle is that a group of people use the Qt platform and there is chunk of webOS that is built on it and not on Enact. Trying to convince people to do the migration from Enyo to Enact was difficult but they have had most success in trying to eliminate friction and it was easier in the sense that there weren’t any required parameters for things. 36:05 – Aaron states that all his questions are answered and his understanding of Enact is clear. 36:21 – Advertisement - Clubhouse 37:10 – Picks! 43:41- END – Advertisement - CacheFly! Picks Joe Monsters of Feyland Chris Presentation by Eric Bailey on Accessibility - If its interactive, it needs a focus style Jimu Robots Wall-E Aimee Coworkers at NPM Aaron Pierogi The Cursed Child Ryan EnactJS Thinking, Fast and Slow Firefox DevTools Full Article
en JSJ 349: Agile Development - The Technical Side with James Shore By devchat.tv Published On :: Tue, 29 Jan 2019 20:15:00 -0500 Sponsors KendoUI Sentry use the code “devchat” for $100 credit Clubhouse Panel AJ O’Neal Aimee Knight Joe Eames Charles Max Wood Special Guest: James Shore Episode Summary James Shore is a developer who specializing in extreme programming, an Agile method. He also used to host a screencast called Let’s Code Test-Driven JavaScript. They begin by discussing the core of Agile development, which James believes is being responsive to customers and business partners in a way that’s sustainable and humane for the programmers involved. It prioritizes individuals and interactions over processes and tools. More can be found in The Agile Manifesto. James delves into the historical context of the immersion of Agile and how things have changed from the 90’s. Now, the name Agile is everywhere, but the ideals of agile are not as common. There is a tendency to either take Agile buzzwords and apply them to the way it was done long ago, or it’s absolute chaos. James talks about ways to implement Agile in the workplace. He believes that the best way to learn Agile is work with someone who knows Agile, or read a book on it and then apply it. James recommends his book The Art of Agile Development: Pragmatic Guide to Agile Software Development for people who want to started with Agile development. The panelists talk about where people often get stuck with implementing Agile. The hosts talk about their own processes in their company. They discuss how people involved in the early days of Agile are disappointed in how commercial it has become.They agree that what’s really the most important is the results. If you can respond to a request to change direction in less than two weeks and you don’t have to spend months and months preparing something, and you do that in a way where the people on the team feel like their contributing, then you’re doing Agile. James thinks that the true genius of Agile is in the way the actual work is done rather than in the way your organize the work. Links Agile Scrum Waterfall Feature Driven Development Extreme Programming (XP) Jira Bamboo Confluence Atlassian stack Cowboy Mock objects Grows Method by Andy Hunt Picks AJ O’Neal: Origin by Dan Brown Searching Aimee Knight: Hacker News Interview Questions Thread. Joe Eames: The Ballad of Buster Scruggs on Netflix Charles Max Wood: Getting up early John Sonmez Kanbanflow video Drip James Shore: Lost in Space on Netflix Star Citizen PC game Jame’s Agile book online Full Article
en MJS 093: Ben Lesh By devchat.tv Published On :: Wed, 06 Feb 2019 05:01:00 -0500 Sponsors Sentry use the code "devchat" for $100 credit Clubhouse CacheFly Episode Summary In this episode of My JavaScript Story, Charles Max Wood hosts Ben Lesh, RxJS Lead and senior software engineer at Google. Ben studied to be an illustrator in Columbus College of Art & Design, but upon graduation he realized he wanted to work in web development. Ben thinks having an interest in problem solving was a key factor on his journey in becoming a developer. For his first programming job, he applied to a position and when he didn’t hear back he kept calling them until they gave him an opportunity. He then worked as a consultant at several other positions before he was offered a job at Netflix where he became the development lead for RxJS 5. Ben then switched over to Google’s Angular team. He is currently working on Angular Ivy at Google. Ben then talks about the projects he has worked on that he is proud of. In his journey as a developer, Ben believes that the take-away lesson is asking lots of questions. He himself had no formal programming training and he got to where he is today by asking sometimes embarrassingly simple questions. Links JSJ 248 Reactive Programming and RxJS with Ben Lesh VoV 020: Reactive Programming with Vue with Tracy Lee, Ben Lesh, and Jay Phelps AiA 199: RxJS with Ben Lesh, Tracy Lee, and Jay Phelps Ben's LinkedIN Ben's Twitter Ben's GitHub http://refactr.tech/ https://devchat.tv/my-javascript-story/ Picks Ben Lesh: Angular Ivy reactive.how Ben's Workshop http://refactr.tech/ Charles Max Wood: Charles' Twitter Full Article
en JSJ 357: Event-Stream & Package Vulnerabilities with Richard Feldman and Hillel Wayne By devchat.tv Published On :: Tue, 26 Mar 2019 06:00:00 -0400 Sponsors Triplebyte Sentry use the code “devchat” for $100 credit Clubhouse CacheFly Panel Aaron Frost AJ O’Neal Chris Ferdinandi Joe Eames Aimee Knight Charles Max Wood Joined by special guests: Hillel Wayne and Richard Feldman Episode Summary In this episode of JavaScript Jabber, Hillel Wayne kicks off the podcast by giving a short background about his work, explains the concepts of formal methods and the popular npm package - event-stream, in brief. The panelists then dive into the recent event-stream attack and discuss it at length, focusing on different package managers and their vulnerabilities, as well as the security issues associated with them. They debate on whether paying open source developers for their work, thereby leading to an increase in contribution, would eventually help in improving security or not. They finally talk about what can be done to fix certain dependencies and susceptibilities to prevent further attacks and if there are any solutions that can make things both convenient and secure for users. Links STAMP model in accident investigation Hillel’s Twitter Hillel’s website Richard’s Twitter Stamping on Event-Stream Picks Joe Eames: Stuffed Fables Aimee Knight: SRE book - Google Lululemon leggings DVSR - Band Aaron Frost: JSConf US Chris Ferdinandi: Paws New England Vanilla JS Guides Charles Max Wood: Sony Noise Cancelling Headphones KSL Classifieds Upwork Richard Feldman: Elm in Action Sentinels of the Multiverse Hillel Wayne: Elm in the Spring Practical TLA+ Nina Chicago - Knitting Tomb Trader Full Article
en JSJ 361: Enough with the JS Already with Nicholas Zakas By devchat.tv Published On :: Tue, 23 Apr 2019 06:00:00 -0400 Sponsors Triplebyte offers a $1000 signing bonus Sentry use the code “devchat” for $100 credit CacheFly Panel AJ O’Neal Joe Eames Aimee Knight Charles Max Wood Chris Ferdinandi Joined by Special guest: Nicholas Zakas Summary Nicholas Zakas discusses the overuse of JavaScript and the underuse of HTML and CSS. The panel contemplates the talk Nicholas Zakas gave 6 years ago about this very same topic and how this is still a problem in the development community. Nicholas expounds on the negative effects overusing Javascript has on web applications and the things that using HTML and CSS do really well. The panel talks about the need for simplicity and using the right tool to build applications. Nicholas recommends the methods he uses to build greenfield applications and to improve existing applications. Links https://www.youtube.com/watch?v=li4Y0E_x8zE https://www.slideshare.net/nzakas/enough-withthejavascriptalready https://twitter.com/slicknet https://humanwhocodes.com/ https://www.facebook.com/javascriptjabber https://twitter.com/JSJabber Picks Chris Ferdinandi: The Umbrella Academy Official Trailer https://github.com/features/actions AJ O’Neal: Jurassic Park Terminator 2 E6000 adhesive Aimee Knight: https://www.reebok.com/us/reebok-legacy-lifter/BD4730.html https://www.holloway.com/g/equity-compensation Charles Max Wood: https://podfestexpo.com/ http://charlesmaxwood.com/ https://www.11ty.io/ https://www.netlify.com/ Joe Eames: https://www.mysteryscenemag.com/blog-article/5905-tom-straw-the-author-behind-castle Richard Castle books https://vanillajslist.com/ Nicholas Zakas: The Power of Full Engagement: Managing Energy, Not Time, Is the Key to High Performance and Personal Renewal by Jim Loehr and Tony Schwartz https://opencollective.com/eslint Full Article
en JSJ 365: Do You Need a Front-End Framework? By devchat.tv Published On :: Tue, 21 May 2019 06:00:00 -0400 Sponsors Sentry use code “devchat” for 2 months free Triplebyte $1000 signing bonus Linode Panel Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal Joe Eames Episode Summary Today the panel discusses the necessity of a front end framework. Overall, there is a consensus that frameworks are not necessary in all situations. They discuss the downsides of using frameworks, such as being restricted by the framework when doing edge development and the time required for learning a framework. They talk about the value of frameworks for learning patterns in programming. The panel delves into the pros and cons of different frameworks available. Joe shares a story about teaching someone first without a framework and then introducing them to frameworks, and the way it helped with their learning. One of the pros of frameworks is that they are better documented than manual coding. They all agree that it is not enough to just know a framework, you must continue to learn JavaScript as well. They talk about the necessity for new programmers to learn a framework to get a job, and the consensus is that a knowledge of vanilla JavaScript and a general knowledge of the framework for the job is important. New programmers are advised to not be crippled by the fear of not knowing enough and to have an attitude of continual learning. In the technology industry, it is easy to get overwhelmed by all the developments and feel that one cannot possibly learn it all. Charles gives advice on how to find your place in the development world. The show concludes with the panel agreeing that frameworks are overall a good thing and are valuable tools. Links JWT Angular Vue Backbone GoLang Express React Redux Hyper HTML 4each Pascal JQuery Npm.js Follow DevChat on Facebook and Twitter Picks Charles Max Wood: Podwrench Aimee Knight: How to Love Your Job and Avoid Burnout So Good They Can’t Ignore You Chris Ferdinandi: Vanilla JS toolkit Thinkster Artifact Conference AJ O’Neal: Binary Cocoa Binary Cocoa Slamorama Kickstarter Binary Cocoa Straight 4 Root Full Article