JavaScript Jabber
Stay current on JavaScript, Node, and Front-End development. Learn from experts in programming, careers, and technology every week.

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

Episoder(725)

JSJ 408: Reading Source Code with Carl Mungazi

JSJ 408: Reading Source Code with Carl Mungazi

Carl Mungazi is a frontend developer at Limejump in London. He is a former journalist and switched to programming in 2016. Today the panel is discussing the benefits of reading source code. Carl began reading source code because he came into programming late and from a different field. His first project was with Mithril, and he read the source code and documentation to help him understand it. The panelists discuss how reading the source code has helped them and others to improve their coding. They compare reading and understanding source code to learning a foreign language, and discuss  different methods. Carl gives some suggestions for reading source code effectively. He advises people to be patient and step through the code. Accept that you will probably take a wrong path at some point or another, but the more you read, the more you will see patterns in how libraries are structured. He also encourages listeners to approach the authors, as they are often happy to lend a hand. Reading source code is an active approach of stepping through, debugging, putting in break points, checking the stack, and so forth. It’s also important to do outside research. Since he has been reading source code, Carl has come to prefer plain JavaScript and libraries with as little code as possible. The panel discusses the benefits of small, simple libraries. Carl gives examples of techniques that he learned from reading a library source code and how he applied it to his own coding style. Reading source code has made him more careful about mixing logic and UI, and now he separates them. He also is more confident in seeing a problem, going to a preexisting library, and just importing the fix for that problem rather than the whole library. Reading source code is really about understanding the code you use in your project. It may slow you down, but you’ll be thankful in the long term because it will help you solve future bugs more efficiently. Carl talks more about his debugging process. He still relies on a debugger, but reading a library helps you to see patterns and guess the output of a function. These patterns persist in other libraries as well. Once you can guess correctly what will happen, you go back to reading the code and find instances where the output is unexpected, and fix it. Carl’s closing thoughts are that through reading source code, he has learned that although code is used differently in each library, they are all written in the same language, and therefore interrelated. This gave him more confidence in reading code because they’re all fundamentally the same. When a bug is discovered, he encourages listeners to look at the source code before googling a solution. PanelistsAJ O’NealDan ShapirSteve EdwardsCharles Max WoodGuestCarl MungaziSponsorsHasura.io Sentry | Use the code “devchat” for $100 credit Adventures in AngularLinksMithril.jsPreactLimejumpPicksAJ O’NealZen of PythonThe Go ProverbsGo with VersionsLink’s Awakening soundtrackDan ShapirProgramming Pearls book Lord of LightSteve EdwardsJabra Elite 65TCharles Max WoodGarth BrooksThe Rocky moviesCarl Mungazi Follow Carl @CarlMungazi and carlmungazi.comEcmaScript SpecHTML 5.2Snarky PuppySpecial Guest: Carl Mungazi. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

19 Nov 201955min

JSJ 407: Reactive JavaScript and Storybook with Dean Radcliffe

JSJ 407: Reactive JavaScript and Storybook with Dean Radcliffe

Dean is a developer from Chicago and was previously on React Round Up 083. Today he has come over to JavaScript Jabber to talk about reactive programming and Storybook. Reactive programming is the opposite of imperative programming, where it will change exactly when needed instead of change only when told to. Reactivity existed long before React, and Dean talks about his history with reactive programming. He illustrates this difference by talking about Trello and Jira. In Trello, as you move cards from swimlane to another swimlane, everyone on the board sees those changes right away. In Jira,  if you have 11 tabs open, and you update data in one tab, probably 10 of your tabs are stale now and you might have to refresh. Reactive programming is the difference between Trello and Jira.The panel discusses why reactive JavaScript is not more widely used. People now tend to look for more focused tools to solve a particular part of the problem than an all in one tool like Meteor.js. Dean talks about the problems that Storybook solves. Storybook has hot reloading environments in frontend components, so you don’t need the backend to run. Storybook also allows you to create a catalogue of UI states. JC and Dean talk about how Storybook could create opportunities for collaboration between engineers and designers. They discuss some causes of breakage that automation could help solve, such as styles not being applied properly and internationalization issues. Dean shares how to solve some network issues, such as having operators in RxJs. RxJs is useful for overlapping calls because it was built with cancelability from the beginning. Dean talks about his tool Storybook Animate, which allows you to see what the user sees. Storybook is an actively updated product, and Dean talks about how to get started with it. The show concludes with Dean talking about some things coming down the pipe and how he is actively involved in looking for good general solutions to help people write bulletproof code. PanelistsJC HiattWith special guest: Dean RadcliffeSponsorsHasura, Inc.Sentry use the code “devchat” for 2 months free on Sentry’s small plan Adventures in Angular________________________________________________________________________________________________________________________ "The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood will be out on November 20th on Amazon.  Get your copy on that date only for $1. ________________________________________________________________________________________________________________________LinksRRU 083Knockout.js Node.jsMeteor.jsRXJSStorybook AnimateRX Helper library Follow DevChatTV on Facebook and Twitter PicksJC Hiatt:JokerDevLiftsDean Radcliffe:  Twitter @deaniusol and Github @deaniusThe KeyframersAction for Healthy KidsSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

12 Nov 201944min

JSJ 406: Security in Node

JSJ 406: Security in Node

Today the panel is talking about security features that are being added to Node 13. AJ talks about the background and what he’s working with Let’s Encrypt. He talks about changes that Node has made to the TLS module. TLS is a handshake that happens between a client and a server. They exchange certificates, generate some random numbers to use for encryption, and TLS handles the encryption. The move to HTTP/2 is all about fixing legacy bugs and legacy features from the SSL days and reducing the number of handshakes.AJ talks about the difference between TLS and HTTPS. While TLS reduces the handshakes between client and server, HTTPS is just HTTP and has no knowledge that TLS is going on. HTTP/2 is more baked in as both encryption and compression are part of the specification and you get it automatically. HTTP/2 is also supposed to be faster because there’s fewer handshakes, and you can build heuristic based web servers. Since browsers have varying degrees of compatibility, a smart HTTP/2 server will classify the browser and anticipate what files to send to a client based on behavior and characteristics without the client requesting themA lot of these new features will be built into Node, in addition to some other notable features. First, there will now be set context on the TLS object. Second, if you’re connected to a server, and the server manages multiple domains, the certificate will have multiple names on it. Previously, each different server name had a different network request, but now a .gitcertificate will let you get all the metadata about the certificate, including the primary domain and all the secondary domains and reuse the connections. These new features are a great improvement on the old Node. Previously, the TLS module in Node has been an absolute mess. These are APIs that have been long neglected, and are long overdue core editions to Node. Because of these additions, Node Crypto has finally become usable. HTTP/2 is now stable, usable, and has backwards compatable API, and a dictionary of headers to make it more efficient in compression.The conversation turns back to certificates, and AJ explains what a certificate is and what it represents. A certificate has on it a subject, which is a field which contains things like common name, which in the case of HTTPS is the server name or host name. then it will have subject alternative names (SAN), which will have a list of other names that are valid on that certificate. Also included on the certificate is the name of the authority that issued the certificate. AJ talks about some of the different types of certificates, such as DV, OV, and EV certificates. They differentiate between encryption and hashing. Hashing is for verifying the integrity of data, while encryption can be used either as signing to verify identity or to keep data owned privately to the parties that are part of the connection. Encryption does not necessarily guarantee that the data is the original data. The show concludes with AJ talking about how he wants to make encryption available to the average person so that everyone can share securely. PanelistsSteve EdwardsAJ O’NealCharles Max WoodSponsorsTideliftSentry use the code “devchat” for 2 months free on Sentry’s small plan Ruby RoguesLinksLet’s EncryptGreenlockHTTP/2Node.jsNode CryptoJWKLZMAGzipBroccoli.jsHTTPSGCMASN.1OWASP listjwt.ioDiffie Hellman Key ExchangeKhana Academy Diffie-Hellman Key Exchange pt.2 Follow DevChatTV on Facebook and Twitter PicksSteve Edwards:Panasonic SD-YD250 bread machineAJ O’Neal:Greenlock v.3Samsung Evo 4 TOB paired with 2012 Macbook Pro Dave Ramsey on Christian Healthcare MinistriesCharles Max Wood: Velcro strapsMac Pro Upgrade GuideSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

5 Nov 20197min

JSJ 405: Machine Learning with Gant Laborde

JSJ 405: Machine Learning with Gant Laborde

Gant Laborde is the Chief Innovation Officer of Infinite Red who is working on a course for beginners on machine learning. There is a lot of gatekeeping with machine learning, and this attitude that only people with PhDs should touch it. In spite of this, Gant thinks that in the next 5 years everyone will be using machine learning, and that it will be pioneered by web developers. One of the strong points of the web is experimentation, and Gant contrasts this to the academic approach. They conversation turns to Gant’s course on machine learning and how it is structured. He stresses the importance of understanding unicode, assembly, and other higher concepts. In his course he gives you the resources to go deeper and talks about libraries and frameworks available that can get you started right away. His first lesson is a splashdown into the jargon of machine learning, which he maps over into developer terms. After a little JavaScript kung fu, he takes some tools that are already out there and converts it into a website.Chris and Gant discuss some different uses for machine learning and how it can improve development. One of the biggest applications they see is to train the computers to figure monotonous tasks out while the human beings focus on other projects, such as watching security camera footage and identifying images. Gant restates his belief that in the next 5 years, AI will be everywhere. People will grab the boring things first, then they will go for the exciting things. Gant talks about his creation NSFW.js, an open source train model to help you catch indecent content. He and Chris discuss different applications for this technology.Next, the panel discusses where machine learning can be seen in everyday life, especially in big companies such as Google. They cite completing your sentences in an email for you as an example of machine learning. They talk about the ethics of machine learning, especially concerning security and personal data. They anticipate that the next problem is edge devices for AI, and this is where JavaScript really comes in, because security and privacy concerns require a developer mindset. They also believe that personal assistant devices, like those from Amazon and Google, will become even more personal through machine learning. They talk about some of the ways that personal assistant devices will improve through machine learning, such as recognizing your voice or understanding your accent. Their next topic of discussion is authenticity, and how computers are actually incredibly good at finding deep fakes. They discuss the practice of placing passed away people into movies as one of the applications of machine learning, and the ethics surrounding that. Since developers tend to be worried about inclusions, ethics, and the implications of things, Gant believes that these are the people he wants to have control over what AI is going to do to help build a more conscious data set. The show concludes with Gant talking about the resources to help you get started with machine learning. He is a panelist on upcoming DevChat show, Adventures in Machine Learning. He has worked with people with all kinds of skill sets and has found that it doesn’t matter how much you know, it matters how interested and passionate you are about learning. If you’re willing to put the pedal to the metal for at least a month, you can come out with a basic understanding. Chris and Gant talk about Tensorflow, which helps you take care of machine learning at a higher level for fast operations without calculus. Gant is working on putting together a course on Tensorflow. If you’re interested in machine learning, go to academy.infinite.red to sign up for Gant’s course. He also announces that they will be having a sale on Black Friday and Cyber Monday.PanelistsChristopher BuechelerWith special guest: Gant LabordeSponsorsReact Round UpSentry use the code “devchat” for 2 months free on Sentry’s small plan Adventures in AngularLinksMachine Learning: How To go from Zero to HeroNSFW.jsTensorflow.jsPyTorchKerasAcademy.infinite.redGantlaborde.com  Follow DevChatTV on Facebook and Twitter PicksChristopher Buecheler:Next.jsBig Wreck, But For The SunGant Laborde: Nicornot.com Free 5 day mini course on academy.infinite.red Special Guest: Gant Laborde. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

31 Okt 201942min

JSJ 404: Edge on Chromium with Chris Heilmann

JSJ 404: Edge on Chromium with Chris Heilmann

Guests Chris heilmann and Zohair Ali are developers for Microsoft working on the Edge project. Today they are talking about Edge on Chromium and the future of developer tools. Edge will now be built in Chromium rather than being its own engine, aligning it more with what is being used on the open web right now. The Edge team wanted to seize the opportunity to bring something into the Chromium project based on the needs of real users and contribute to the open source web. Edge on Chromium won’t be limited to Windows 10 either, but will be available on Mac, Windows 7, and Windows 8. This project is still in beta with no set release date, so the Edge team is looking for people to test it out on Mac and tell them how it works. Chris and Zohair talk about the different parts of a web browser and what distinguishes Chrome from Chromium.  Chromium is not just a platform, it’s an entire browser that you can install. Google adds a bunch of Google services to Chromium, such as being able to sign into your Google account,  and that’s how you get Google Chrome. Similarly, the new Edge adds its own features on top of Chromium, so you can sign into your Microsoft account. By now the browser engines are so similar to each other that the users are looking for the user experience, interface, and services around it, so it made more sense for the Edge team to contribute to Chromium than to maintain their own engine and help it improve.Chris and Zohair talk about some of the features in Edge on Chromium. One service they’re particularly excited about is the Collections feature, where you can drag images, text, etc into Collections and export it to Excel or Word. Collections was inspired by what users need, and they talk about some of the different use cases for it. The new Edge on Chromium will also have an IE mode for products that still require IE 11. If you define what services need IE 11, Edge will open an IE 11 tab within the browser so you will not have to jump between browsers. Unfortunately, this feature is only available on Windows. Edge on Chromium will also offer an integration with VS Code, called Elements for VS Code, which takes part of the developer tools from Edge and puts it inside VS Code. Since the tools are based on Chromium, it stays in the same context all the time so you don’t have to jump back and forth, and you can see the changes live in your browser. This feature is in beta right now and they are looking for people to test it. The Edge team talks about their process for creating tools. They are working on putting their tools into other languages so that they are accessible to more people. They talk about how they want to avoid creating Edge specific tools as much as possible because they want to make it better for everybody. One of their biggest struggles is everybody demands developer tools, but nobody wants to contribute, so they don’t have as much feedback and not as much outside contribution. That’s why they keep calling for people to try out the new Edge on Chromium and give them feedback. They want to make that change more transparent so that they build things that people want. They will have to make some of their own tools, but they make sure that they don’t have any third party dependencies. They mention that all Chrome extensions are compatible with Edge, so if it’s available in the Chrome webstore, you can add it to Edge, you just have to be sure to allow it. They talk about some of the testing tools available. The show concludes with a discussion of the fate of Chakra Node. PanelistsAJ O’NealAimee KnightDan ShapirSteve EdwardsWith special guests: Chris Heilmann and Zohair AliSponsorsTideliftSentry use the code “devchat” for 2 months free on Sentry’s small plan Views on VueLinksChromiumMicrosoft Edge InsiderMicrosoft Chakra CoreElements for VS CodeMS Edge DriverPuppeteer  Follow DevChatTV on Facebook and Twitter PicksAimee Knight:Cypress testing librarySteve Edwards: CSS Tricks Screencast episode 174: Using Local Overrides in DevtoolsDan Shapir:The Chronicles of AmberAJ O’Neal:The Legend of Zelda: Oracle of AgesLover by Taylor SwiftChris Heilmann:The Marvelous Mrs. MaiselTabNinedoesthedogdie.comZohair Ali:Saga graphic novel seriesSpecial Guests: Christian Heilmann and Zohair Ali. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

29 Okt 201958min

JSJ 403: Why Developers Need Social Skills with Mani Vaya

JSJ 403: Why Developers Need Social Skills with Mani Vaya

In this episode of JavaScript Jabber, Charles talks about the new direction he has for the company. He wants  to drive people to the point that they have the skills that make people want to hire and work with them, to teach them how to ‘Max out’. Today the panel the skills that developers need to progress in their careers: social skills. The panel talks about their observations from work that the people who advanced and grow in their career were the ones with social skills, not necessarily with technical skills. The company wants to get stuff done, and if your social skills are getting in the way of projects getting done because you can’t work with others, you are not that useful to the company, and you will be stuck in the lower ranks while others who may not have the same technical skills will rise in the ranks because they are pleasant to work with. Mani talks about his personal experience getting laid off for lacking these soft skills. But then he read the book 48 Laws of Power by Robert Green, realized his shortcomings, and started to apply just one lesson from the book. Within 6 months, he was promoted.Mani delves deeper into the first lesson taught in 48 Laws of Power, Never Outshine the Master. Fundamentally, this means that you don’t try to prove in meetings how good you are, or that they’re wrong, or that you think that you are better than them. The more you the aforementioned things, the less likely you will be to get promoted or trusted. Mani talks about how he used to do these things and how it cost him multiple jobs. When he put this lesson into practice, he changed his methods and the boss started to like him, leading to his promotion 6 months later. The panel discusses this lesson and what benefits can come from it. Mani shares another lesson that he learned through the story of a friend trying to get him to invest in his business. After Mani refused to invest multiple times, his friend stopped asking him to invest, but instead asked him for business advice. Eventually, Mani invested in the business because when he saw that his friend was influenced by his advice, it engendered trust between them. The panel agrees that if you want to influence someone, you have to be influenced by them. It is important to treat someone as a person rather than an asset or wallet, and ensure them that their investment is not their end goal. One of the most fundamental social skills that you must be able to like people, because other people can smell manipulation. The panel transitions to talking about the paradoxical nature of social skills and that they are often the opposite of what you think will work in a situation. Unfortunately, there will always be difficult people to work with. To illustrate how to work with difficult people, Mani shares the story of how Gengis Khan was convinced not to destroy a city of artists and engineers by his advisor, Yelu Chucai. Gengis Khan agreed because Yelu Chucai was able to structure his plea in a way that would also benefit Gengis Khan. The conversation shifts to how to conduct an interview to see if a candidate will fit into your team culture. First, you must know what you’re looking for and understand your team culture, and then ask for stories of when they accomplished something in the interview. If every story is all about how they did something and they don’t include other people, then that may indicate their self-centeredness. They discuss the Ben Franklin Effect. For those listeners wondering where to begin with all this self improvement, Mani has read over 2,000 books on business and offers a course on his website, 2000books.com. Mani has teamed up with JavaScript Jabber to offer a special deal to the listeners of this podcast. To get lifetime access to Mani’s courses at a 40% discount, follow the links below. PanelistsSteve EdwardsCharles Max WoodWith special guest: Mani VayaSponsorsReact Native RadioSentry use the code “devchat” for 2 months free on Sentry’s small plan React Round UpLinks48 Laws of Power by Robert Green The 360 Degree Leader by John C. Maxwell The Ben Franklin Effectjavascriptjabber.com/social and 2000books.com 40% off for the first 200 peopleCoupon code: Jabber Follow DevChatTV on Facebook and Twitter PicksSteve Edwards:Rex ChapmanCharles Max Wood:BombBombIndieHackers.com  Stolen bike prankMani Vaya: How I Built This by NPRAs a Man ThinkethSpecial Guest: Mani Vaya. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

24 Okt 20191h 9min

JSJ 402: SEO for Developers with Vitali Zaidman

JSJ 402: SEO for Developers with Vitali Zaidman

Vitali Zaidman is a full stack developer who works for WellDone Software Solutions and is currently working on a SEO project. Today’s show is about SEO for developers. SEO stands for search engine optimization, which helps your website appear higher on search engines. SEO has changed a lot in the past 10 years. It has become much more regulated, and the “dirty tricks” of the past will actually penalize you, so it is important to do it properly. Today the best way to promote yourself on Google besides making good content is for developers to optimize the content, make it small, operational, secure, accessible, and operate on mobile. Much of it goes back to using semantic HTML since Google looks at it before looking at the structure of your website, how valuable it is, and how users interact with it. Having good semantics helps Google determine how valuable it is, so semantic HTML should be a top priority. Semantic HTML can also make your site more accessible to users, which will in turn give you a larger audience. The panel talks about some of the challenges of SEO faced by companies. While bigger companies have the privilege of dedicated SEO teams, small companies often lack these specialists. Thankfully, Google has made their guidelines for SEO very accessible and gives you a lot of tools to track your optimization. The panel talks about different methods of SEO, such as including FAQ at the bottom of the web page, optimizing page speed, and image optimization. Structured data like questions and answers enriches the data that is shown for users on the search results page. To score your website’s SEO, Google released the tool PageSpeed Insights, which will assign your website a performance score. Google uses two main tools to track a website’s SEO. First, they use real field data. If you opt in to ‘help improve Chrome’s features and performance’ when you install Chrome, it tracks how fast websites load on your Chrome, and they collect this information to understand how webpages load. It is required that your website has a certain amount of visitors to be tracked and added to the database. Second, Google has their own devices that will check your website. Currently, they are using a Moto G4 to test for mobile access, and a slow internet connection. Because of this, it is pretty easy to get a good score on desktop, but difficult to get a good score on mobile. The technology that drives all this is called Lighthouse. Overall, performance is the main thing users look for, so aim for good performance and fast websites. The panel discusses the correlation between performance and SEO. For example, Fox News and CNN are two of the top search results for ‘news’, but they have a dismal Google PSI score. They conclude that performance shouldn’t be ignored, but be careful about directly correlating performance and SEO. They also caution against getting obsessed over certain aspects of SEO by themselves. PanelistsDan ShapirAimee KnightCharles Max WoodWith special guest: Vitali ZaidmanSponsorsTideliftSentry use the code “devchat” for 2 months free on Sentry’s small plan Elixir MixLinksSEOJSONGoogle Webmaster guidelinesGoogle PageSpeed InsightsChrome CrUXLighthouseHere's How the Google Speed Update Will Impact Your SiteSEO for Developers - A Quick OverviewGoogle Quality Guidelines Follow DevChatTV on Facebook and Twitter PicksAimee Knight:Spotify CLIDan Shapir:Chrome Dev Summit 2019 Dan Shapir on TwitterThe Anubis GatesCharles Max Wood:St. George MarathonVitali Zaidman: Vitali’s websiteArzamas Academy Follow Vitali on Medium and TwitterSpecial Guest: Vitali Zaidman . Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

22 Okt 201938min

JSJ 401: Hasura with Tanmai Gopal

JSJ 401: Hasura with Tanmai Gopal

Tanmai is one of the founders at Hasura. Hasura gives you instant graphQL APIs on top of a Postgres database. The eventual idea is to make data access secure and easy. Tanmai explains the challenges of doing this in the cloud. He talks about some of the difficulties with the tooling around using GraphQL and its bias towards working well with a monolith. Since GraphQL is basically a shared type system that describes your API, that means all your types need to be in the same code base. This is at odds with the folks who want to do microservices and serverless functions, because since their API is split across multiple services they have different types, and forcing these types to work together defeats the purpose of using microservices. Also, storing state across requests doesn’t work well with serverless and cloud native stuff. In short, learning to live without state is one of the general challenges with going serverless. This is where Hasura comes into play, and Tanmai explains how it works. Hasura is metadata driven, and each instance of the server can leverage multiple calls and exhibit a high amount of concurrency. It’s designed to be a little more CPU bound than memory bound, which means that configuring auto scaling on it is very easy and allows you to utilize the elasticity of cloud native applications. Tanmai clarifies his usage of the word ‘cloud native’, by which he means microservices. He explains that when you have a metadata based engine, this metadata has a language that allows you to bring to bring in types from multiple upstream microservices, and create a coherent graphQL API on top of that. Hasura is a middle man between the microservices and the consumer that converts multiple types into a single coherent graphQL API.Next, Tanmai explains how Hasura handles data fetching and a high volume of requests. They also invented PostgresQL, RLS-like semantics within Hasura. He explains the process for merging your microservices into a single graphQL interface. Back on data fetching, Tanmai explains that when the product is an app, preventing an overabundance of queries becomes easier because during one of the staging processes that they have, they extract all of the queries that the app is actually making, and in the production version it only allows the queries that it has seen before. Hasura is focused on both the public interface and private use cases, though private is slightly better supported. Tanmai talks about the customizations available with Hasura. Hasura supports two layers. One is an aliasing layer that lets you rename tables, columns, etc as exposed by PostgresQL. The other is a computer column, so that you can add computer columns so you can extend the type that you get from a data model, and then you can point that to something that you derive. The panelist discusses the common conception of why it is a bad idea to expose the data models to the frontend folks directly. They discuss the trend of ‘dumbing down’ available tooling to appeal to junior developers, at the cost of making the backend more complicated. They talk about some of the issues that come from this, and the importance of tooling to solve this concern. Finally, Tanmai talks about the reasons to use Hasura over other products. There are 2 technologies that help with integrating arbitrary data sources. First is authorization grammar, their version of RLS that can extend to any system of types and relationships, The second is the data wrapper, part of the compiler that compiles from the graphQL metadata AST to the actual SQL AST. That is a generic interface, so anyone can come in and plug in a Haskell module that has that interface and implement a backend compiler for a native query language. This allows us to plug in other sources and stitch microservices together. The show concludes with Tanmai talking about their choice to use Haskell to make Hasura. PanelistsAJ O’NealDan ShapirSteve EdwardsCharles Max WoodWith special guest: Tanmai GopalSponsorsAdventures in DevOpsSentry use the code “devchat” for 2 months free on Sentry’s small plan The Dev Ed PodcastLinksHasuraHaskellNode.jsCloud NativeMicroservices PostGraphile  Postgres PostgresQL RLSSwaggerJAMstackSoapRest Follow DevChatTV on Facebook and Twitter PicksAJ O’Neal:The Economic SingularityCapital CitiesGameCube HomebrewDan Shapir:RomaniaJSCampSteve Edwards:Cold Blooded: The Clutter Family MurdersCharles Max Wood:Maxcoders.ioTripItSt. George MarathonVO2 Max appTanmai Gopal:  Follow Tanmai on Twitter @tanmaigoBroken Earth TrilogyThe Three-Body ProblemgraphQL AsiaSpecial Guest: Tanmai Gopal. Support this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

17 Okt 20191h 10min

Populært innen Business og økonomi

stopp-verden
dine-penger-pengeradet
e24-podden
rss-penger-polser-og-politikk
rss-borsmorgen-okonominyhetene
finansredaksjonen
livet-pa-veien-med-jan-erik-larssen
tid-er-penger-en-podcast-med-peter-warren
pengepodden-2
utbytte
pengesnakk
rss-sunn-okonomi
morgenkaffen-med-finansavisen
stormkast-med-valebrokk-stordalen
aksjesladder
okonomiamatorene
rss-markedspuls-2
lederpodden
shifter
rss-helt-ra