POPULARITY
Are you tired of cargo cult engineering leadership? In this episode, David Guttman, author of “The Superstruct Manifesto”, shares his intriguing manifesto on building and leading high-performing engineering teams. We explore: - Why daily standups are overrated and what to do instead- How to avoid the trap of the "10x engineer" myth- Why computer science riddles don't belong in your interviews- The importance of estimates (hint: it's not about the accuracy!) - How to treat your developers like adults If you are an engineering leader or founder looking to build a high-performing engineering team, this episode is for you! Listen out for:(03:06) Career Turning Points(07:10) The Meaning Behind Superstruct(07:44) The Superstruct Manifesto(09:30) "We Will Not Inflict Daily Standups on Our Devs"(16:05) Alternatives to Daily Standups(18:26) Status Report & Accountability(25:48) "We Will Not Recruit 10x Developers"(33:19) "We Will Not Test Devs with Computer Science Riddles"(38:04) Interview Best Practices(43:12) "We Will Not Let Devs Start without an Estimate"(51:11) Improving Our Estimates(53:55) Estimate vs Fixed Deadline(56:21) 3 Tech Lead Wisdom David Guttman's BioDavid Guttman is a developer and consultant obsessed with building repeatable systems for recruiting, onboarding, and managing remote software engineers. Over the course of his 20+ years in software development, David has led engineering teams to ship massive and innovative projects, including the content platform that powers Disney.com and StarWars.com (along with over 170 other sites, across dozens of languages and regions); video ad servers that handle over 10 billion requests per day; and an LMS that TIME magazine listed as one of the Best Inventions of the Year 2020. David is also a leader in the tech community. As the organizer of the monthly event series js.la, the host of the Junior to Senior podcast, and a champion in the Node.js mentorship initiative, he has helped thousands of developers level up. David is the author of two popular JavaScript books, has over 90 open-source packages on npm, and has given talks at tech events and conferences like JSConf and JSFest. Follow David:- LinkedIn – linkedin.com/in/david-guttman - Website – david.app - Superstruct – https://superstruct.tech/ -
11月23日に開催されたJSConf JP 2024について、印象に残ったセッションなどについて@spring-raining、@halken、@ayaka.kitanakaが話しました。
Learn about the future of front-end with Malte Ubl (CTO at Vercel). Malte is the creator of JSConf.eu and has extensive experience in engineering teams on projects like Wiz (the front-end framework Google still uses in most of their consumer apps) and Google Search (Desktop). Now he is at Vercel - mainstreaming the tools and techniques common in BigTech - to other tech companies. Listen to find out: >> The CTO Role: how he balances ⚖️ Product
Guest Tracy Hinds Panelists Richard Littauer | Ben Nickolls Show Notes Hello and welcome to Sustain! The podcast where we talk about sustaining open source for the long haul. We are very excited with our guest today, Tracy Hinds, who's currently the CEO and Founder of Crow & Pitcher and serves as a CFO and board director at the Open Source Initiative. She's also a long-time open source practitioner, maker, creator, and a powerful woman of glory, and has founded tons of different communities. Tracy is also a non-profit leader, a career transitioner, and a forever conflict manager. Today, we'll learn more about Crow & Pitcher and the Community Committee (CommComm) in the Node.js Foundation. Also, we'll hear Tracy's thoughts on what she thinks the role is for Product Managers, Program Managers, and Project Managers in open source. Go ahead and download this episode to learn more! [00:02:05] Tracy tells us more about her journey to becoming the Founder of Crow & Pitcher. [00:04:25] Since Tracy was instrumental is the Node.js community for setting up Community Committee (CommComm), she tells us more about it. [00:09:25] Tracy mentions how having an understanding board is essential to the health of the organization. [00:12:51] We hear Tracy's thoughts on how she feels about the role for Product Managers, Program Managers, and Project Managers in open source. [00:16:19] Ben wonders if there was any work within CommComm to try and create that separation and is that something Tracy thinks is more of a challenge within open source. Tracy explains the criticism about core contributors not being open to input. [00:19:58] We hear Tracy's thoughts on what she thinks is the best way to talk to someone to let them know you want to be in a Project Manager role or Product Management role. [00:23:56] Ben wonders what can people do who are working in a code centric open source project, to make themselves and their work more open and amenable to people that come in a more product management or project management capacity? [00:27:24] Find out the difference between a Product Manager, Project Manager, and Program Manager. [00:30:47] Tracy tells us where you can follow her online. Quotes [00:08:12] “Everyone gets broken down by the amount of work and ambition in open source.” [00:11:07] “I kind of love when things get deprecated because one, it means people are paying attention enough to notice you don't need these things anymore, and it means that things are still changing, and I think that's an important sign in a project.” [00:14:06] “I think it's really interesting to think of many open source projects as products.” [00:18:30] “Every project needs documentation and people being compensated for documentation.” 00:20:40 (On how to get a role as PM in OSS): “It helps to clarify a problem.” [00:21:13] “They need to build trust.” [00:25:02] “A lot of people have open source code projects, but not open collaboration.” [00:28:58] “You're the goalie.” Spotlight [00:31:42] Ben's spotlight is making a Swamp Cooler. [00:32:12] Richard's spotlight is Bryan Hughes. [00:33:00] Tracy's spotlight is her exposure to JSConf's bringing her to where she is today. Links SustainOSS (https://sustainoss.org/) SustainOSS Twitter (https://twitter.com/SustainOSS?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor) SustainOSS Discourse (https://discourse.sustainoss.org/) podcast@sustainoss.org (mailto:podcast@sustainoss.org) Richard Littauer Twitter (https://twitter.com/richlitt?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor) Ben Nickolls Twitter (https://twitter.com/BenJam?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor) Tracy Hinds LinkedIn (https://www.linkedin.com/in/tracyhinds) Tracy Hinds Twitter (https://twitter.com/hackygolucky?lang=en) Crow & Pitcher (https://crow-and-pitcher.com/crow-%26-pitcher) Crow & Pitcher Twitter (https://twitter.com/crowandpitcher) Node.js Community Committee (CommComm) (https://nodejs.org/en/about/community/) Sustain Open Source Design Podcast (https://sosdesign.sustainoss.org/) Let's Talk Docs Podcast (https://ltd-podcast.sustainoss.org/) Swamp Cooler (https://www.nytimes.com/wirecutter/blog/do-swamp-coolers-work/) Bryan Hughes Twitter (https://twitter.com/nebrius?lang=en) JSConf (https://jsconf.com/) Credits Produced by Richard Littauer (https://www.burntfen.com/) Edited by Paul M. Bahr at Peachtree Sound (https://www.peachtreesound.com/) Show notes by DeAnn Bahr Peachtree Sound (https://www.peachtreesound.com/) Special Guest: Tracy Hinds.
Video: https://youtu.be/Cxaf8E00GMMSlides: https://docs.google.com/presentation/d/1sJSqNy-t-kVxzrWlqMTp_03nI7Zo8Znr7k0f0C6L9ig/edit?usp=sharingTimestamps:[00:00:00] Intro[00:02:17] Part 1 - Components: Code Organization for Real Apps [00:04:26] What we learned from React [00:07:46] Part 2 - Architecture: Choreography vs Orchestration [00:13:05] Retries and Timeouts [00:14:37] Part 3 - Time: React vs Temporal[00:16:34] Elevator Pitch [00:17:13] Programming Model [00:18:44] Comparing React and Temporal Principles [00:19:11] Live Demo: Amazon One Click Button [00:23:49] Talk Recap [00:24:16] React and Temporal Full Comparison [00:24:42] Conclusion: EnablementTranscript [00:00:00] Once again, I want to thank you all for tuning in and joining, React New York 2021 without further ado, I'll pass it on to Shawn. All right, so hi everyone. Hello, React new York. It is my home town in the U S and I miss everyone back in New York. I am currently based in Seattle, but I'm here to talk about React for the Backend. In 2020 I actually thought that I had given my last React talk because I was all tapped out. I had said everything I wanted to say, and then React New York came by and said, do you want to speak? And I was like, oh, I really wanted to speak for React New York. So here's my presentation about what I've been working on and what I think the parallels have been for React. And I think there's some generalizable lessons, even if you don't end up using Temporal. So, the inspiration for this talk came from Guillermo Rauch, the creator of Next.js. And he was the first person to point out that Temporal.io, does to backend and infra what React did to frontend. Temporal engine is quite complex, much like React, but the surface exposed to developers a beautiful render function and I'm a bit upset because he realized there's before me and I have been working on Temporal for a few months now. So important caveats before I start this talk. What I'm presenting to you is alpha for TypeScript. Temporal is typically a goal or Java based application, but we're developing TypeScript and hopefully launching it soon. And then finally "React for the backend" is an analogy, not a design goal. The way I treat this is like, it's a, it's basically like crabs. And one of the most entertaining facts that I've ever found is that nature has apparently tried to evolve crabs five independent times. And in fact, there's a word in evolutionary biology for it called Carcinization. And of course, this is really good for a lot of memes. So tired convergent evolution is not uncommon, especially when species have similar selecting pressures in their environments, wired. Everything is Crab. And perhaps everything is React, because we have similar design space problems. So I'll tell a little bit of the story through three parts there's Components, and we'll tell it through the story of Uber, talk about architecture, we'll talk through the story of YouTube, and Time will tell you through the story of Amazon. So a lot to cover, I'm going to try to go really fast. Don't worry. I'll share the slides on my Twitter later on. Okay. [00:02:17] Part 1 - Components: Code Organization for Real Apps So part one is about components. You see this a lot on YouTube. Probably you're watching now on YouTube or live streaming. And yeah, you know, like three hour live stream and that's it. Very cool. I think we, we know how to break things down and React has really helped us be more productive by being able to break things down into the components and knowing how to compose them together in a predictable way. But there's a lot of things unanswered in things like this in, in full stack, clones of major well-known apps, which is the hard parts. What like a typical Uber trip, we'll have all these steps like search pricing match. Pick-up drop-off rating tipping, payment, email, uh, and so on and so forth. And typically the naive way of organizing all this is basically one after the other, right? Like this is search goes to pricing, goes to matching, goes to pick upgoes to dropoff goes to rating goes to tipping goes to payment, goes to email, imagine that these are all managed by separate teams and scaled independently. Then you realize, like, this is only the happy path. Then you have to throw in a whole bunch of things that can happen along the way. An Uber trip is basically a long running process with humans in the loop and humans are very, very messy by nature. So how would you write an Uber clone? good luck with a lot of data technologies that you would typically reach for just naively, because you will have to discover all these systems and all these use cases and edge cases along the way. So when people say full stack, they often really mean like this half drawn horse meme. I think this is particularly funny so I take every opportunity I can get to show it, but to be honest, a lot of us front end developers are probably the other way the half-drawn Dragon where we're frontend a very good and in the backend, we'll just like, you know, stick some stuff on Firebase and something. And in reality, if you look at the backend systems, most companies, especially at scale, go towards some form of very complex micro service, system. I don't have the chart for Uber, but Hail-0 is probably a good comparison. Netflix, Twitter, and It's not really avoidable. If you want to scale a company to any significant size, you probably have to break them up into independent services because you're going to ship your org chart anyway. [00:04:26] What we learned from React The thing I realized as a React developer, as a front end developer, is that actually we had a pretty good run in the past seven, eight years of React in terms of the fact that front end developers know how to organize code at least in terms of the component level. So we moved from the jQuery era where everything was just kind of spaghetti all over the place to at least something more organized where event handlers are strongly tied, locally tied with renders, but essentially managed by React's runtime. So a few key lessons from React that I personally draw [00:05:00] is that you want to have a component and a renderer model. Like, so essentially the user or the developer writes components. And then the react core team writes the render and that handles a lot of the boilerplate that you might typically forget. And this is everything to do with on mounting or having local states. And it gives you a very nice, non-leaky abstraction that you can write. Second, you can also guarantee work and correctness, which is originally what drew Jordan walk to make something like React because he was working on Facebook messenger and there was a lot of inconsistent state within Facebook manager because of the spaghetti code. So correctness, meaning that we embrace functional programming to produce a virtual DOM view is a pure function of state. If you look at the old enough React talks, you will see a lot of v = f(d), so view as a pure function of data. And finally the programming model. We like to say that it's just JavaScript. There's no custom syntax with templating syntax to learn. I think all these three lessons , there are actually a lot more, but all of these three lessons are where I'm going to focus on for this talk. And I think whenever you tackle any programming paradigm, any framework, any design question, you might want to run it through some of these ideas. So whenever I talk about React principles, I always like to bring up the fact that there's this often overlooked repo called react-basic. And it's actually in the official React organization on GitHub. And this is Sebastian Markbage, who is the tech lead of React. And he wrote down six years ago, his principles on what he thinks makes up React on a fundamental basis? No, JSX just like, what are the principles that we're designing for? We are designing for a simple, pure transformation, abstraction, composition, state, memoization. The words that he uses are very theoretical sometimes, but you feel it every single day when you write React. So there's a lot of things else apart from that, that reacts has done for front end programming. Apart from deterministic renders, we have useState with a reduction of boiler plate with unmounting, child components in con in the very careful design composition, um, side effects where, you know, we have used effect or use memo. And actually a lot of people don't know. I don't, I forget my source. I think it's Sophie Alpert, but, one-third of the React code base is actually just normalization of events across browsers. So you don't even have to worry about it. And creating synthetic events for that. They also produce a dev tool and manage a central scheduler and obviously the success of React over the past five, six years has really shown Testament to how great all these decisions have been. If you want to learn more about the talks that I've done and my perspectives on some of these React principles, I've done three talks. One is at React Rally. The second at JSConf and the third, ,at React Summit. So you can check out my YouTube for more conversations on that. I don't have time here. Okay. [00:07:46] Part 2 - Architecture: Choreography vs Orchestration So that was part one where we talked about Components and the React revolution. So part two, we're going to talk about architecture. So a bit, one level higher than just components. And I'm going to motivate this question with a question of how would you write YouTube. And again, if you look on YouTube for how to write YouTube tutorials, you can get full-stack clones of YouTube, which is pretty impressive, you know, write YouTube in three hours using Firebase. That's very impressive. Unfortunately the hard parts of YouTube also come in. And there are a bunch of Googlers actually who actually went and interviewed YouTube engineers on how YouTube works on the backend. There's a bunch of work that goes on in the background. So you need to upload your file. You need to analyze for metadata. You need to split it up into chunks. You need to process these chunks in parallel, and then you need to stitch it back. And by the way, processing, you have to produce an array of formats, right? From like, 240 P to like 1400 P or something like that. And then you have to stitch all these chunks back into the continuous videos that you actually see in stream. You need to notify subscribers, you need to produce automatic captions and you need to produce thumbnails. And that is again, just the happy path. Right. So, what about all these other features? It's. For example, YouTube premiere is a scheduled release of a YouTube video or feeding into the recommendation algorithm. That must be the most craziest batch job in the world. And you need to scale this process, whatever, whatever you design for 30,000 hours of video uploaded every hour. That's the sheer amount of volume that's going on YouTube today, which is just insane. Like, like any design that you make at scale is going to break in some respect. So I think, I think that's, that's really interesting to consider. And I learned about this actually, and I thought more about this because I interviewed one of our users who is Descript (hi! I'm editing this transcript in Descript rn lol). Descript is a audio transcription platform and their entire business is transcribing audio and then making it easy for you to edit audio. I do it for my podcast every single day and millions of people use it. I think it's really cool. So their problem was that when a user hits transcribe, it kicks off asynchronous multi-stage and parallelized process that involves reading, encoding audio, chunk splitting. external API calls, merging results that may potentially arrive out of order and then verifying their alignment. So there's a lot of [00:10:00] nuance here that can get really tricky. And if any part of the process fails, you need to try it again. So, this is typically the kind of architectures that people build up incrementally over time, as they discover all these use cases and then find holes and patch them because it's too late to rewrite something. There's a lot of decisions that goes into here. And this is normal. This is natural. I think you run into basically the eight fallacies of distributed computing, which has actually discussed or discovered back in 1994 by people at Sun Microsystems. I love these cartoons but it can be a little bit hard to read. So here's a more organized version of them. At the bare minimum, don't forget distributed computing fallacy number one, which is that the network may or may not be reliable or compute may or may not be reliable. So, what that means in practice is that when you're calling system a, B, C, D E F G you may actually need to introduce hardening layers because at every point and you cross system boundaries, you have a chance of failure and that multiplies exponentially, as you have more and more services tied up in your systems like we saw for the Uber example, like we saw for the YouTube example. You need to add in timeouts and retries. And what that means is that you need to persist the number of times you timed out, when you timed out, what jobs you timed up. So you need a database every single time, and then you need a scheduler or a timer to say when the next time is going out, I'm going to try this again. And you need to write this for every service. If the ma the maintainer for every service needs to maintain both the code and the infrastructure for this. This is a lot of how I was talking about things when I was exploring the serverless world. So here's a real life example from the AWS blog where they said that you were using dead letter queues to replay messages when such things as failures occur. This is a fine looking example until you try to scale it. And again it looks like a complete mess, complete track, and it's very hard to keep in your head, and pretty soon when you're explaining this to your CTO you look like the Pepe Silvia meme. So the solution that I found is really to have a central orchestrator, right? Instead of every single system maintainer writing their own API hardening layer, which is a production requirements, as you find more and more of these bugs, you should centralize it with a centralized team that takes care of the orchestration of all these different services. And that's in the business, what we call choreography, which is A to B to C versus orchestration, which is a central orchestrator coordinating the dance between AB and C, and then storing both the infrastructure and the code for the scheduler and the database. So there's a really good article on this by Yan Cui in the burningmonk.com so I highly recommend checking it out where he talks about choreography versus orchestration, with real life examples that people use in AWS, but also it's not specific to any cloud. It's a architecture design pattern, which I think fundamentally, if you start off with this, it's really hard to rearchitect to this. I mean, it's, it's possible because people are doing it, but also it's a conscious, architectural choice that you might not know that you're making if you don't know about it. So, I guess a lot of my message here is to tell you that orchestration is a thing. [00:13:05] Retries and Timeouts Also, so you want to declaratively put into your framework retries and timeouts, so for example, this is actually our API. You want to be able to say, all right, here's the default retry policy. Whenever I fire off an activity, an activity is just like an external API call, for example. So when I fire up an activity, I want it to be retried every second. If it fails, I need a backoff coefficient, like exponential backoff. This is very similar to the TCP protocol so that if the endpoint is failing or getting rate limited, I don't keep retrying, and then building up a DDoS attack on myself, I actually back off and put more and more intervals in between until some maximum interval, let's say a hundred seconds. And then I give myself a maximum attempt, so I can say like, all right. I don't want any retries. I can just say have a maximum attempt of one. Or let's say, I want a linear back off and not an exponential for whatever reason. And I want to try to a maximum of five times - you want to have this all declarative so that you can tweak this as you understand your system and you scale your system. Right? So I think this is a really interesting programming model that just puts retries into the code that you write. And that's only possible when you have your centralized orchestrator, no matter what system, not just Temporal. Okay. So the case that I'm making is really for choreography versus orchestration. And I, the analogy that I make for front end versus the back end is that it's kind of like vanilla or jQuery versus react. React has a react as the central orchestrator, orchestrating all the components. And I think that's a really interesting architectural analogy that you can make and learn from React. All right. [00:14:37] Part 3 - Time Part three - Time. I'm doing very good on time. I think better than I thought, which means that we'll have time for a live demo, which is really awesome. So let's talk a little bit about Temporal. [00:14:45] What is Temporal? What is Temporal? Temporal is the open source platform for orchestrating highly reliable mission-critical applications at scale. I love talking a little bit about the history, the reason because our CEO started at Amazon as the tech lead for what became Amazon SQS. Our [00:15:00] CTO was at Microsoft and it was the principal architect of the Durable Task Framework, which became a Microsoft's version of Durable Functions, and then finally they joined Uber and worked on Cadence, which is the open-source version of their workflow orchestration platform and Cadence became so popular that they spun out and became Temporal. And since then it's been adopted by a lot of well-known household name companies, especially in the developer world. There are a lot of people hiring for Temporal developers, which I really like to see because it's not just being used, but also it's creating jobs for people and it's becoming a desirable skillset. And most recently last week we had Netflix presenting about how they used Temporal for their CI/CD. Temporal has three components or produces three products that are used in sync. The main star is Temporal server, which is comparable to the React runtime that you might see, then there's Devtools, which is the UI that you might want to inspect the state of things. And then the SDK is, which is what you use to code. So I think all those are really comparable to what we have in React and having been in the React world for while, like, it's really amazing to see the analogies that we have. We have exactly the same thing. For me, the really sort of the seal of approval comes from Mitchell Hashimoto who, created Hashi Corp, saying that without Temporal, we would have spent a significant amount of time rebuilding Temporal, which actually to me is the best form of validation because Mitchell is one of the best developers in distributed systems and he says it's hard and he says it does it well. All right. Enough social proof you want actual facts? I would just give it straight to you. [00:16:34] Elevator Pitch So because your workloads like the YouTube encoding, or like the Uber journey and this technology was developed at Uber i s long running and it ties together multiple services. You want to standardize timeouts and retries and you want to make it easy for every team to have production grade retries and timeouts. Because this work is so important. You must never drop any work. You must log all progress. In other words, you must use event sourcing. And then finally, because this work is so complex, you want to use generic programming languages, instead of Domain specific languages. So you want to model a dynamic, asynchronous logic, and then you want to reuse, test, version and migrated it. So that's the pitch in one screen. But I'll just break it down for what it means, and then we'll go into a demo. [00:17:13] Programming Model So to me, The, the closest analogy to React is the programming model, because React spends a lot of time on API design and in the workflow orchestration world there are a lot of JSON or DAG based domain specific languages. So you, you write a bunch of JSON or you do boxes and arrows boxes and arrows boxes and arrows, sometimes you've even write XML, which is very interesting as well. What I find with all these is that they're actually really good for manipulating visually. But they get very tricky when you need to do programming language constructs, like variables, functions, loops, branching statements and all the things that we've invented in programming languages over the past few years. So if you use "just JavaScript" or "just programming languages", you have all the tooling available. You can use all the libraries that are available. You can use all the testing and code version, quality controls available. If you write your own, you have to rebuild all this dev tooling from scratch for yourself. So that's essentially what this is. Here's an example from one of the big clouds where this is their workflow orchestrator model, where you write Jason and it's really hard. It actually goes off the screen and I couldn't really fit everything on one screen. And with Temporal literal just JavaScript you call an endpoint you use that the result of that end point to call other end points, for example. It's a very simple example, but in built here is default retry policies that have been worked out. So both of these handle reliability on rails, it's just, we differ in the programming model and the engineering that it takes to maintain one of these SDKs is I'm learning. It's very, very immense. So it's really interesting. [00:18:44] Comparing React and Temporal Principles So, again, back to the core principles that we talked about early on from React. React d ecided on using a framework, decided on correctness and decided on a programming model, and Temporal, in a very similar way. The developer writes workflows and the Temporal core team writes the orchestrator, which is Temporal server. In terms of correctness, React insists on functional programming, Temporal insists on event sourcing in deterministic workflows and then programming model, you want "just JavaScript" or just programming languages, not any custom DSL syntax. [00:19:11] Live Demo: Amazon One Click Button So the final example that I'm gonna motivate is which is like, I'm, I've been trying to re progressively reduce the complexity of my examples. So we met from Uber, which is like a super long running, a lot of humans in the loop to YouTube, which is not so much humans in the loop. You upload it once and then everything else takes over from there. Now I just want to build one feature, which is a one-click buy button in React or in front end. It's actually super easy. It's a button. That's the literal simplest thing you can possibly do. You put an onclick handler. You're done. If you want to do a one-click buy, you do a setTimeout, and then say like, okay, if you want to cancel this within some window, with Amazon is 30 minutes, we can cancel it. But if you want to persist it, imagine if some person clicks, closes the browser and then changes their mind, opens the browser again, and it's gone. You're screwed. You don't have any other way to implement one-click [00:20:00] purchases. You need to implement timers on the backend to do this. I was watching this old talk from Joel Spolsky where he talks about the engineering for the one-click buy button. And I put it up on my YouTube because this is such an old talk. And I was afraid to link to the timestamp, but you can check it out as it's just a three minute video where he tells the story about how Amazon moved from shopping cart to one-click buy I mean they still have a shopping cart but it's that important because in online e-commerce actually even up to today the abandonment rate for shopping carts is 70%. So imagine if you implement this one feature, you improve your sales by I don't what's the inverse of 70%, three times. That's really amazing. So I think it's just fascinating and it's not just about Amazon. It's not about one click buy. It's about user experience. It's about making things easy and intuitive and that often involves turning synchronous things into asynchronous things and in persisting them so that they persist in the background. So I have a little demo here. I'm going to go really, really fast, but you can check out the code in temporalio/samples-node. There's the specific path this year but it's basically a Next.js demo where I have a Next.js folder here. This is going to be pretty standard for a lot of React developers. Hopefully you're familiar with Next.js, so you can learn it. It's got some pages and an API routes where I have serverless functions that call and send signals to my workflow functions. I have also a Temporal folder where I have written my workflows and activities. The activities are just a little logs obviously, cause they don't interact with any backends, but they could. And then the workflow coordinates the states in the background of all of these. So I can show you the code, but essentially I kick off a one-click buy with a purchase and then I set a timer and promise.race with a five second wait. So if I receive a cancel signal during that timer then that cancels if not, it goes through and the purchase is confirmed. Obviously I can. And what's fascinating about Temporal is that every single step is persisted in automatically saved. So in other words, I can sleep for 30 days. I can sleep for a year. I can sleep for five years and it doesn't matter because it's all persisted and wakes up automatically. So the compute the, this serverless function can be. The worker or a Temporal server itself can go down. You can just bring you back up again and it carries on as though nothing happened because of event sourcing. So, I'm gonna, I'm going to go ahead and run this. I think it's uh, demos I'm always stressed out about live demos. Okay. I mean, I did test it before the talk. It's just that whenever I'm streaming, like it adds an extra latency thing and that goes haywire. So, Let's see if I have this demo available. All right. So I also want to pull this out, which is the UI layer. These are the my test runs. But I have here at one-click purchase UI, and literally, I, you know, I, I want to implement this without a shopping cart, but I want to be able to cancel within some certain amount of time. So if I click buy, uh, it clicks, it handles it's. It sends a workflow. And that workflow starts in starts in the background and it's running, right. It's waiting for the timer to proceed. So I'm going to hit the timer, uh, and you can see that a timer started and time of ended, uh, within that five second window that I specified, obviously I should make it longer if I, if I really wanted to show this along the way. Um, so, uh, this, this is, this is as is purchased, um, and we can, uh, and now we've confirmed it. Um, but if I ever want to click buy, and then I can click the. That also fires off a different workflow, uh, where it sees that it receives the cancel signal from me. Uh, so, so I signaled it to cancel. And that's a very useful model as well. So this actually shows off a lot of the core principles of Temporal, which is you kick off a workflow, you can set durable timers, you can send it human signals and you can get out data as well with queries. There's a lot of interesting elements behind that, but that's the core demo that I wanted to show off. So maybe I'll write a YouTube example and then I'll go on to an Uber example and be a billionaire. [00:23:49] Talk Recap So ultimately I just want it to recap again, what we covered. We covered components, we covered architecture we covered time, and these are all the three elements I wanted to compare reacts and Temporal, and explain a little bit of how we think about doing the hard parts of making clones of very popular projects. Why is it so interesting? It's a little bit like the crabs story, you know. Obviously the founders of Temporal are not front end developers. They didn't even know react at all. [00:24:16] React and Temporal Full Comparison But they independently evolved a lot of the same principles and this that's, I haven't even gone into like the full comparison. So we talked a little bit about deterministic functions and local state and composition, but we haven't talked about normalization and how that compares dev tools. Testing is also super interesting thing as well as the central runtime. So there's a lot here, which I think. And fascinated by, and I'm obsessed by applying the lessons from React to things that are not React. [00:24:42] Conclusion: Enablement And I think overall, when I asked my CEO, like, what is the core message that we want to deliver is actually about enablements. Like we enable people to do things that they're not formally trained to do because we wrapped it up rapid all in a central runtime or central framework. So, uh, I always loved the Alfred north Whitehead quote that [00:25:00] civilization advances by extending the numberof things that we can do without thinking about it. So for me, my version of it is that B2B software advances by extending the number of jobs we can perform without formal training. And the message overall here is that Temporal lets backend developers or, just general full stack developers do distributed systems right? So that's it. I blasted through that. I only took 26 minutes. Really great for me, cause I was worried that it would take 50 and I'm happy to answer any questions you can hit me up on Twitter at Swyx. You can read my long form blog posts about why Temporal and then you can join our mailing list, YouTube or Slack. Thank you. Alright, thank you very much things. So I think that was a really, really nice. And you did, uh, went through that quite quickly. Uh, when I see the comments, people love the, like the most right there, because I could fail because I could fail. It's always like that. So, uh, yeah. Um, the nice thank you for the presentation. With this talk, I think it's actually the last talk of the event and I want to thanks everyone for joining us and thanks to everyone, thanks to all the speakers, of course, for being part of this event, uh, React New York 2021 and the sponsors. Um, I think this would be a good afternoon, I guess, or good night, depending on where we are in the world. Right. Have a good one. Everyone.
In 2009 I was managing Yahoo's tech event budget when we agreed to sponsor the very first JSConf, the one that almost didn't happen, the one that started something… And though I've still never attended a JSConf, nor learned to code, the zeitgeist of the JavaScript community and its event culture have had a profound effect on how I live and the devrel work I do. I'd like to speak about cultivating “JavaScript: The Good Times”—the evolution of inclusiveness, the effort to replace customs that no longer reflect the values and demographics of the community, the focus on new practices for joyful conference-going and knowledge sharing. The JavaScript ethos has fueled a reinvention of the tech gathering as an act of participation and experiment, generating enduring artifacts for learning and excellent new habits for our relationships - personal and professional.
This episode of OpenHive.JS was recorded across four continents, with people in Italy, Colombia, California and Dubai — a fitting setup for a conversation focused on building and strengthening global communities and connections. As our guest Liz Parody points out, it’s what you put into your interactions that matters, and this conversation is proof of that. A self-taught, highly skilled software engineer and Head of Developer Relations at NodeSource, Liz has made a name for herself building key communities within open source. Through her work organising JSConf, Pioneras Developers and StartUp Weekend Women Edition, Liz has gained valuable insights and techniques for growing, sustaining and empowering OSS communities, many of which she shares in this episode. Welcome back to OpenHive.JS.
Wer sein Studium abbricht, um ins Denoland zu gehen, hat sicher eine interessante Geschichte zu erzählen. Aus diesem Grund haben wir in dieser Folge Luca Casonato zu Gast, der uns von Deno erzählt, einer Laufzeitumgebung für JavaScript und TypeScript. Deno wurde 2018 von Ryan Dahl, dem Schöpfer von Node.js, auf der JSConf EU vorgestellt (hier geht's zur Aufzeichnung des Talks). Er beschreibt darin fundamentale Schwächen von Node, die er bereut und nun mit Deno lösen möchte. Unser Gast Luca arbeitet als eine der wenigen Personen hauptsächlich am Projekt und spricht mit uns über die größten Unterschiede zwischen den beiden Varianten. In dieser Folge streifen wir das Dependency-Management von Deno, seine Eigenschaften als opinionated Runtime und seine hohe Sicherheit gegenüber Node. Hier kommt ihr zu Lucas Webseite und seinem Twitter-Profil. Auf der Webseite von Deno könnt ihr euch noch mehr Infos einholen. Picks of the Day Luca: Die Deno-Extension für Visual Studio Code mit cooler Autocompletion. Fabi: JSConf Vortrag von Philip Roberts: What the Heck is the Event Loop anyway. Ein Must-Watch für alle Javascript-EntwicklerInnen. Ihr habt euch schon immer gefragt, was die Event Loop ist bzw. wie sie funktioniert? Dann ist das Video genau richtig. Ansonsten ist es aber auch nochmal die perfekte, unterhaltsame Auffrischung, um die Event Loop komprimiert in 25 Minuten erklärt zu bekommen. Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback. podcast@programmier.bar Folgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und virtuelle Meetups und beteiligt euch an Community-Diskussionen. Twitter Instagram Facebook Meetup YouTube Musik: Hanimo
Hoy me Acompaña Flor Banos, psicóloga de formación y desarrolladora front end Retail Analytics, también es organizadora de Vue Vixens MX y JSConf MXLinks.JSConf MXVue VixensLaboratoriaComunidad DevsChilePlataforma para conferencias: Hopin.to similar a Welcu.comMusic CreditsOpening and Outro Musicby DanoSongshttps://danosongs.com/Background Music Music:Thief in the Night by Kevin MacLeodLink: https://incompetech.filmmusic.io/song/4521-thief-in-the-nightLicense: http://creativecommons.org/licenses/by/4.0/Support the show (https://www.buymeacoffee.com/matiasfha)
In this episode of Adventures in Machine Learning, Charles and Gant chat with Milecia about applying AI to UI/UX and the conversation takes a creative turn as they discuss plenty of other fun-filled and exciting topics she’s working on. There’s banter about self-driving cars and golf carts as they apply AI/ML to practical and non-practical uses. The epic mind-powered guitar takes the stage and classic movies get referenced. Be sure to follow Milecia on her adventures in Machine Learning on her Twitter at https://twitter.com/flippedcoding. Sponsors Machine Learning for Software Engineers by Educative.io Audible.com CacheFly Panel Charles Max Wood Gant Laborde Guest Milecia McGregor Links HalfStackNYC talk Hawaii https://github.com/google-research/bert https://scholar.google.com/ https://audible.com/code Picks Gant Laborde: http://virtualcoffee.io/ Charles Max Wood: The Black Prism Milecia McGregor: War of Art https://javascript-conference.com/node-js/reading-thoughts-with-javascript/ Follow Adventures in Machine Learning on Twitter > @podcast_ml
Chris Castle is a developer advocate at Heroku and Salesforce. He is joined by Carter Rabasa, the lead organizer of CascadiaJS, as well as Julián Duque, a developer advocate here at Salesforce/Heroku who organizes NodeConf and JSConf in Colombia. Carter shares his first experiences at a tech conference, finding it to be surprisingly intimate and a great community of well-intentioned web developers that wanted to learn. He was inspired to start CascadiaJS, a JavaScript conference situated in the Pacific Northwest. Over time, he realized that it's the people and the networking opportunities that really makes CascadiaJS special. When COVID-19 made it clear that in-person events would not happen for 2020, he and his team struggled to figure out how to put on an event that their community would love. It required them to imagine a future where software to support their vision didn't exist yet. They became certain that the event would need to learn how to be virtual for a long time. They accepted this challenge, and set to work building a conference model that they felt was interactive and immersive. There was just a tremendous excitement and enthusiasm to see if they could do something that hadn't been done yet. Of course, they stumbled in several ways; there were issues sending swag to customers, for example. Still, there are many reasons to keep the virtual conference format. For one, it's more accomodating for people with physical accessibility issues as well as attendees all over the world. There's more flexibility in the timing of events, where speakers can just play their sessions one after another; attendees can hop between different workshops and talks at the click of a mouse. Julián agrees that CascadiaJS' hybrid format of a recorded talk followed by a live Q&A was great for engagement, as speakers were chatting with viewers as their session played. Overall, Carter is excited at future conferences having a serious virtual component to them. Links from this episode CascadiaJS 2020 went virtual-only for the first time We Need Better Virtual Dev Conferences article NodeConf and JSConf in Colombia are just two events grappling with the pandemic
Nos acompañan Diego Lara y Rodrigo Quezada, miembros del comité organizador del JSConf México (2, 3 y 4 de Noviembre).Comenzamos con un tema serio pero que es importante tener presente: la salud mental. Swanros comparte brevemente su reciente experiencia yendo a terapia, y por qué su terapeuta le recomendó programar para calmar y prevenir ataques de ansiedad. Platicamos sobre la importancia de tener un proceso de DevOps para el front end de nuestras aplicaciones, la diferencia entre SPAs de otro tipo de aplicaciones, y sobre la complejidad de desarrollar aplicaciones en frontend. ¡Regalaremos 15 boletos para la JSConf! Cada viernes, en El Newsletter DEV, mandaremos un reto de JavaScript, y las primeras personas que lo resuelvan se llevan los boletos. Así de simple. ¡Suscríbete a El Newsletter DEV ya!Enlaces del episodio:Diego Lara en TwitterRodrigo Quezada en TwitterEventloop - Meetup de la comunidad de JavaScript en Ciudad de MéxicoPure O Test - Free and ConfidentialJSConf.mxEl Podcast DEV se transmite en vivo a través de live.elpodcast.dev los martes, a las 8PM (CDMX).Te puede interesar:El Patreon: apóyanos desde $3USD al mes y recibe el After Show del podcast cada semana en tu propio RSS privado. (Escucha un episodio del After Show gratis)El Newsletter DEV: es como un episodio del podcast, pero en tu correo. Todos los viernes.La Tienda: compra playeras de El Podcast DEV. Enviamos a todo el mundo.El Telegram: ven a continuar la conversación entre semana con la comunidad.El Twitter es para que nos des retuit.
小松和Perry在10月份分别去了柏林的 Wikidata Con (https://www.wikidata.org/wiki/Wikidata:WikidataCon_2019) 和上海的 JSConf China (https://2019.jsconfchina.com/) ,聊聊我们仨儿参加技术会议的经历。
マリーナベイ・サンズ - シンガポールを象徴する随一の5つ星リゾートデスティネーション ガーデンズ・バイ・ザ・ベイ - Visit Singapore 公式サイト JSConf.Asia Singapore 2019 Variable Fonts and the Flexible Nature of Screens and Devices by Mandy Michael | JSConf.Asia 2019 - YouTube Variable Fonts Experiments - a Collection by Mandy Michael on CodePen Decovar: A multistyle decorative variable font by David Berlow Evan You on Vue.js: Seeking the Balance in Framework Design | JSConf.Asia 2019 - YouTube vuejs/vue-function-api: Vue2 plugin for the function-based RFC. 化け猫アイコンメーカー(HTML5版) ブルーピリオド (5 冊) Kindle版 GitHub Sponsors ktsn/vuex-smart-module: Type safe Vuex module with powerful module features Meguro.es # 22 @ メルカリ - connpass
My guest on today’s show is a Developer Advocate at Google working with the Chrome team to develop and promote web standards and developer tools. Prior to Google he worked at Lanyrd on their mobile website and for the BBC on JavaScript libraries and standards. He says that he wants the web to do what native does best, and fast. EPISODE DESCRIPTION: Phil’s guest on today’s show is Jake Archibald. He is a Developer Advocate at Google. Currently, he is working with the Chrome team developing and promoting innovative tools like squoosh.app. He is there to promote web standards and developer tools to all who will listen. Before beginning his career at Google he worked for the BBC developing their web services and JavaScript library and standards. Later he moved to Lanyrd. Today, he is a well-known conference speaker. Jake has delivered talks at JSConf.Asia, LDNWebPerf and SmashingConf London, to name a few. KEY TAKEAWAYS: (00.49) –Could you give us an understanding of what your current role with Google as a developer advocate is like? Jake starts out by explaining that it is a really varied role that changes from day to day. Last year, he was working on Squoosh.app, an image compression tool for the web. It uses codecs from C and Rust to compress images in the browser. Other times he works on web standards. He is also involved in fixing Chrome bugs. He sees is role as promoting the web rather than just Google services. When other browsers get things right they praise and promote them too. His aim is to help everyone to get more out of the web and working for Google has not constrained him at all he has been given the freedom to speak freely, which helps things to move forward faster. (3.50) Phil asks him to tell the audience about his work with the BBC, which was also all about web standards. Initially, Jake made web pages for TV shows. He then moved on to work on the BBC’s JavaScript library, which they use on pretty much every one of their pages. One of the biggest challenges he faced then, was keeping everything backward compatible. BBC policy meant that everything they produced had to be accessible using free tools, even older versions. Because, at the time, the newest version of Safari was a paid for tool, everything they built had to be compatible with the older version because it was still free. (5.41) – Can you please share a unique career tip with the I.T. career audience? The thing that made Jake successful was being in the right place at the right time. He feels there is an element of luck involved in everything. When he started out he knew very little about the web. But, within 2 years he had learned most of CSS, HTML, and JavaScript. So, when the web exploded he was able to exploit that knowledge to the full. This was despite the fact that there were, and still are, gaps in his knowledge. Not knowing everything will not stop you from progressing in your IT career. So, don’t get hung up about it. Just maximize what you do with your current skills and keep on learning to succeed. (8.00) – Can you tell us about your worst career moment? That happened early in his career. He was working for a large corporation looking after their site and intranet. One day the HR department asked him to take some of the job postings and install them on their intranet. It sounded easy but was far from it. The way their site worked with cookies made it very tricky to scrape the information, so it could be added to the intranet. At the time, he knew nothing about Perl. But, it was really the only solution. So, he had no choice but to work out how to do it. After a bit, he managed it and the team he was working with were really pleased. But, he realized they had zero understanding of what it had taken to achieve that result. At that point, he realized he had not found his dream job. In fact, it was going to be quite limiting, so he had no choice but to move on. That felt pretty bad. He was pretty disappointed. The other worst moment was when he broke the BBC’s iPlayer, their streaming service. He had not uploaded something properly. An error which, after two weeks, broke the corporation’s streaming service when a rarely used server was pulled into use. Only then did the error become apparent. He was blamed, despite the fact that it was a weakness in the deployment system that ultimately caused the issue. (13.58) – What was your best career moment? For Jake, being able to contribute to the HTML spec was a huge moment. The web will outlive him, so it feels good to be leaving a legacy, something which others will continue to benefit from. (15.45) – What excites you about the future of the IT industry and careers? For Jake, the fact that the web and JavaScript are still growing is exciting. In 10 years it is going to look very different than it does now. We are going to be able to do so much more with it. (17.55) – What drew you to a career in IT? When Jake was given his first computer at about the age of 7, he was hooked. He loved programming stuff that resulted in immediate visual feedback. So, he fell in love with the web the moment he was introduced to it. (19.00) – What is the best career advice you have ever received? One of Jake’s first jobs was working for a UK retail chain called GAME. Weirdly, his then boss told him to “get out of retail as soon as possible.” He pointed out that the pay was awful and the job was rarely enjoyable. At the time, the job fitted in well with his studies, so he stayed. But, he took the advice to heart and was careful to make sure he did not follow a career path that led to him working in retail. (20.55) - Conversely, what is the worst career advice you've ever received? Interestingly, that came from a deputy manager at GAME. He wanted him to go into retail management. Fortunately, his direct boss had already pointed out to him the pitfalls of that career path. So, Jake did not make the mistake of staying in retail. (21.19) – If you were to begin your IT career again, right now, what would you do? Jake would make sure that he got a grounding in the basics. His career path meant he skipped a lot of the simpler stuff. Now, he is struggling a bit because of this. He wishes he had done more of a computer science based course. Instead of the multimedia orientated one he actually completed. (22.38) – What are you currently focusing on in your career? Jake’s primary objective is not to get promoted into misery. It is something that he has seen happen to others. It is all too easy to get taken further away from what you enjoy doing every time you get promoted. Plus, of course, every time you move up the ladder you end up with more responsibility. He would rather take a sideways move than end up doing something he does not enjoy. Right now, his focus is web performance. He thinks that a lot of the bundling tools have got things wrong. So, that is very much a focus. (24.07) – What is the number one non-technical skill that has helped you the most in your IT career? Becoming a confident speaker has made a huge difference to Jake’s career. One conference talk led to another until he started to become well know. When that happened, finding work became really easy. The thing he enjoys most about conferences is speaking to people after he has given his talk. Jake finds that he learns so much from those conversations. (27.00) - What do you do to keep your own IT career energized? Jake says that he embraces procrastination. The most important work he has done has happened when he has meandered away a bit from what he should have been doing. Giving yourself a little time to explore is a great way to get the creative process going and come up with something really different. It is a great way to break the cycle of boredom and re-energize yourself so you can get some of the more tedious stuff done. (29.13) - What do you do in your spare time away from technology? Jake walks a lot, especially in the countryside. He finds it to be a good way to get away from things, take a bit of exercise, re-set and re-energize. (31.00) – Phil asks Jake to share a final piece of career advice with the audience. While at school his art teacher said to him “you get better with every painting that you paint.” Now, he realizes that is true of coding too. You need to practice to get good at it. If you are not developing the skills you want on the job. Take on small projects outside of the workplace to help you to do so. BEST MOMENTS: (2.35) JAKE – “I’m paid by Google to promote all things web." (5.50) JAKE – "Learn to be in the right place at the right time." (14.11) JAKE – "Contributing to the HTML spec was a huge moment for me." (16.36) JAKE – "In 10 years, we're going to look at the web now and think that looks so ancient." (22.40) JAKE – "Don’t get promoted into misery." (27.00) JAKE – "Embrace procrastination, as much as time allows." CONTACT JAKE: Twitter: https://twitter.com/jaffathecake GitHub: https://github.com/jakearchibald/ Website: https://jakearchibald.com/
GUEST BIO: My guest on today’s show is a front end developer who has been writing code since he was 8 years old. He enjoys people, code and talking to people about code. He now travels around the world encouraging, educating and empowering developers in the web development community. EPISODE DESCRIPTION: Phil’s guest on his show today is Tejas Kumar. He is a front-end developer who has been coding since the age of 8. Tejas has worked with a long list of front-end frameworks, programs and languages, including JavaScript, TypeScript, React, and the Babel webpack. He is also a conference speaker who is working towards his goal of speaking at every JSConf, across the word. Tejas wants to educate and empower developers, in every corner of the globe. KEY TAKEAWAYS: (1.10) – I would like to start by asking about your work traveling the world speaking to developers and empowering them. Tejas explains that he started doing this, June of last year, when he spoke at JSconf EU. His talk was well received and he really enjoyed it. So, he decided that he would like to speak at each of the JSconf events that are held worldwide. Tejas structures his talks as dialogue. He enjoys the conversation he has with his audience. Afterward he gets to carry that conversation on and talk to some really interesting people, from all walks of life. Everyone from web architects to traditional architects who design buildings. (2.25) - So in terms of the numbers of conferences, talks you've done, how many of you clocked up now? Last year, Tejas did 7 conferences in 6months. But, that is nothing compared to his friend Sarah Vieira who spoke at 47, last year alone. His aim is to do an average of one a month, so he can maintain a reasonable work-life balance. (3.10) – Have you got any conferences coming up? There is one that had not yet been announced, at the time this recording was made. But, he also due to speak in September, at JSconf Budapest. (4.15) – Can you please share a unique career tip with the I.T. career audience? Tejas says it is important to remember that IT professionals are working in an industry where feigning knowledge is the norm. He has noticed that in technical meetings, everyone, including himself, will just nod their heads and pretend that they fully understand what is going on. Tejas finds this sad. He points out that a culture in which people feel an overwhelming need to be right and are disinclined to ask questions is not a healthy one. There are also a few people who feel an overwhelming urge to constantly correct everyone. Often, these people publically pick others up about silly, unimportant things simply because they want to appear to be cleverer. They tend to think they are always right. People like that can end up putting those who are new to the industry. (7.54) – Can you tell us about your worst career moment? And what you learned from that experience. Unfortunately, at the start of his career Tejas was thrown in at the deep end. He was being asked to do a mid-level job despite the fact he had very little experience. Worse, his team leader was constantly critical of him. Despite this, Tejas toughed things out and became good at the job. So, much so that other companies were headhunting him. But, when he asked for a raise his CTO just laughed at him and said he was not worth it and nobody would pay him that sort of money. Naturally, he quit. Before asking for the raise he had been looking around to see what was available. So, he knew what he was asking for was reasonable and that he could get a job elsewhere. In other words he had leverage. So, when they said no, he was comfortable with just quitting and moving on. In fact, he had already been offered a job by a company he liked the look of. But, he was not sure he was qualified and experienced enough. So much so, that he wrote back and explained this to them. Fortunately, they were really positive. Their attitude was that he knew more than he thought and if he did not they were sure he could quickly fill any gaps in his knowledge. Even before the hiring was official his new boss demonstrated that he believed in Tejas. After working for a boss that constantly tore him down working for someone who built him up was very refreshing for Tejas. Quitting his previous post was the best thing Tejas has ever done. (10.35) – What has been your career highlight? Tejas responds by saying that he is actually currently living his career highlight. Every day feels like a new best day at his job. He works with a brilliant team, has a lot of freedom, can more or less choose what technology he works with and works on interesting projects. Tejas especially appreciates the fact that his team works smart. For example, they budgeted 2 days to build a feature. With the help of his team, he was able to build it in 15 minutes. Phil jokes that if he was Tejas’ boss he would probably be challenging his estimation process. This joke encourages him to share another career highlight. Tejas always has a good time at conferences and meets interesting people. But, being asked to speak at React Finland was extra special. It is non-profit, everyone stays in the same hotel and the atmosphere is great. (12.17) – Can you tell us what excites you about the future of the IT industry and careers? The fact that the web is an on-exhaustible resource really excites Tejas. He grew up in Qatar, a country that is built on oil, which, unfortunately, is running out. So, Tejas appreciates working in an industry where there will always be work. Tejas is particularly pleased to see the serverless way of working coming to the fore. It is a simple way of working that means that things like IoT are now a reality. He is also to see the industry become more inclusive. People from every corner of the globe are getting involved and succeeding in the tech industry. They are many people from these countries becoming leaders in their field. People of color, women and non-binary people are all enjoying successful IT careers. (14.11) – What drew you to a career in IT? Tejas has a rare, dangerous and life-threatening illness. Even doing something relatively simple like climbing the stairs or lifting a backpack could kill him. He has ended up in the emergency room several times after doing something relatively minor. So, for Tejas sitting at a screen and writing is his only viable option. Fortunately, at the age of 8, Tejs discovered that he liked coding. He could not go to school or play outside, so he spent many hours playing around with HTML and coding. So, naturally, he got quite good at it. His mother did not expect him to live past 10th grade. So, it feels great to have achieved as much as he has. Tejas is understandably proud of what he has been able to do with his friend, especially the conference speaking. His message to the IT Energizer audience is – if I can do it, so can you. (16.08) – What is the best career advice you have ever received? Someone once warned Tejas not to believe the hype. The same people that are talking you up today may not do so tomorrow. It is very important not to base your identity on what people say about you. If you do that, you are basing your view of yourself on a very shaky foundation. (17.22) - Conversely, what is the worst career advice you've ever received? Someone once told Tejas to quit IT. They literally said you suck at IT, quit. Kill yourself. He knows that some of it must have been a joke. But, at the time, it did not feel that way. Naturally, he was very upset by this and thought maybe I do suck; maybe I will never be anything. It was a real low point for Tejas. (17.38) – If you were to begin your IT career again, right now, what would you do? Tejas thinks he would not actually do anything different. He would still start by learning and working with JavaScript. It is a really forgiving language, which makes it ideal for beginners. (18.15) – What are you currently focusing on in your IT career? Tejas is challenging himself to learn the operations side of things. For example, Kubernetes, he is also interested in learning more about back end development. (19.06) – What is the number one non-technical skill that has helped you the most in your IT career? Tejas says it is his ability to communicate and the fact that he enjoys public speaking. But, these skills have taken a lot of time and hard work to learn. As a child, he was badly bullied. Because he could not go to school or play outside it was hard to connect with people, he became socially awkward. He hated the fact that people did not like him. So, decided to do something about it. He went online and googled “how to make people like you” and read tons of books on the subject. It helped. Bit by bit Tejas learned how to put people at their ease and be good company. Today, being charming, considerate and a good communicator are all 2nd nature to him. (20.44) - What do you do to keep your own IT career energized? His job keeps him energized. He really loves the culture his company has, the team and the work he does. He can’t wait to go to work every day. Tejas gets head-hunted quite a lot, but he is so happy with his current company that he is not tempted by any of the offers. He feels energized every single day by the work he is currently doing. (21.57) - What do you do in your spare time away from technology? Tejas loves music, in particular, playing music. He has an album due out soon. Plus, right now, Tejas is busy planning his wedding. (22.25) – Phil asks Tejas to share a final piece of career advice with the audience. People matter more than code. He would even make the case that soft skills matter more than the hard ones do. BEST MOMENTS: (6.32) TEJAS – "CHECK TO SEE WHO SAID IT" (9.15) TEJAS – “I normally do not negotiate salary unless I have leverage." (10.00) TEJAS – "Developer jobs are in demand. The harvest is plentiful, but the workers are few." (12.42) TEJAS – "The web is a non-exhaustible resource” (16.07) TEJAS – "There's nothing that can ultimately hold you back, if that’s your path." () TEJAS – "" CONTACT TEJAS: Twitter: https://twitter.com/tejaskumar_ Github: https://github.com/tejasq Website: https://www.tejaskumar.com/
Sponsors: Radio Infinite Red TripleByte offers a $1000 signing bonus Panel: Nader Dabit Special Guest: Catalin Miron In today’s episode of the React Native Radio Podcast, the panel talks with Catalin Miron who is currently working for Skype. Catalin uses React and React Native and talks with Nader Dabit about past and current projects. Check out today’s episode to hear all the details! Topics and Questions Discussed: 0:11 – Nader welcome everyone and mentions today’s guest, Catalin Miron! 0:31 – Nader and guest have met through a past conference. 0:54 – The topics of today’s episode is mentioned here. 1:09 – Nader: Can you give us your background, please? 1:15 – Guest gives his background. He talks about React, Swift, Hootsuite, Skype, and other topics. 2:20 – Nader: Do you work for Microsoft? 2:30 – Guest: I have been under the benefits of both because Skype is under Microsoft. 3:01 – Nader: It’s cool because we are using Skype now! 3:29 – Nader: Are you guys using React XP or is it pure React Native? 3:35 – Guest answers. 4:17 – Nader asks questions about features and fixing bugs. 4:38 – Guest: If you need to fix a bug or...definitely you can have time to contribute. 5:47 – Topic summary. Nader: What are some of the problems that people have with animations and React Native? Then let’s go into some practices and tools that can help. 6:09 – Guest answers the question. 7:52 – Nader: What are some of the libraries that people are using? Nader asks other questions, too. 8:31 – Guest: To answer the first question – usually I am using animated API. It’s a super but simple library to help build animations in general. 9:55 – Nader: How would you implement a gradient animation in the first place? And then what kind of combination would you use? 10:23 – Guest answers the question. 11:48 – Nader: What are some of the problems that people are running into in order to implement animation in general? With all of these libraries are people still facing problems? 12:31 – Guest answers the question. 14:06 – Nader: I have a question around iOS and Androids. How have Androids and iOS differ nowadays? 14:32 – Guest answers the question. 15:44 – Nader: You mentioned that you are doing this work through Skype? What animations have you guys been implementing? 15:59 – Guest. 17:41 – Nader: Any talks or anything planned in the future? 17:50 – Guest. 21:34 – Nader: Where can people follow you and hear about your projects? 21:42 – Guest: Twitter & GitHub!22:25 – Nader: Anything else that you want to say? 22:32 – Guest wraps-up with his final thoughts. Links: Guest’s Twitter Guest’s GitHub William Candillon’s Twitter Browniefed Jason Brown’s GitHub Guest’s YouTube Buy Me a Coffee Picks: Nader js Conference Tutorials by Nader Guest JSConf
Sponsors: Radio Infinite Red TripleByte offers a $1000 signing bonus Panel: Nader Dabit Special Guest: Catalin Miron In today’s episode of the React Native Radio Podcast, the panel talks with Catalin Miron who is currently working for Skype. Catalin uses React and React Native and talks with Nader Dabit about past and current projects. Check out today’s episode to hear all the details! Topics and Questions Discussed: 0:11 – Nader welcome everyone and mentions today’s guest, Catalin Miron! 0:31 – Nader and guest have met through a past conference. 0:54 – The topics of today’s episode is mentioned here. 1:09 – Nader: Can you give us your background, please? 1:15 – Guest gives his background. He talks about React, Swift, Hootsuite, Skype, and other topics. 2:20 – Nader: Do you work for Microsoft? 2:30 – Guest: I have been under the benefits of both because Skype is under Microsoft. 3:01 – Nader: It’s cool because we are using Skype now! 3:29 – Nader: Are you guys using React XP or is it pure React Native? 3:35 – Guest answers. 4:17 – Nader asks questions about features and fixing bugs. 4:38 – Guest: If you need to fix a bug or...definitely you can have time to contribute. 5:47 – Topic summary. Nader: What are some of the problems that people have with animations and React Native? Then let’s go into some practices and tools that can help. 6:09 – Guest answers the question. 7:52 – Nader: What are some of the libraries that people are using? Nader asks other questions, too. 8:31 – Guest: To answer the first question – usually I am using animated API. It’s a super but simple library to help build animations in general. 9:55 – Nader: How would you implement a gradient animation in the first place? And then what kind of combination would you use? 10:23 – Guest answers the question. 11:48 – Nader: What are some of the problems that people are running into in order to implement animation in general? With all of these libraries are people still facing problems? 12:31 – Guest answers the question. 14:06 – Nader: I have a question around iOS and Androids. How have Androids and iOS differ nowadays? 14:32 – Guest answers the question. 15:44 – Nader: You mentioned that you are doing this work through Skype? What animations have you guys been implementing? 15:59 – Guest. 17:41 – Nader: Any talks or anything planned in the future? 17:50 – Guest. 21:34 – Nader: Where can people follow you and hear about your projects? 21:42 – Guest: Twitter & GitHub!22:25 – Nader: Anything else that you want to say? 22:32 – Guest wraps-up with his final thoughts. Links: Guest’s Twitter Guest’s GitHub William Candillon’s Twitter Browniefed Jason Brown’s GitHub Guest’s YouTube Buy Me a Coffee Picks: Nader js Conference Tutorials by Nader Guest JSConf
GUEST BIO: Jasmine Greenaway is a Cloud Developer Advocate for Microsoft. She has been working as a .NET developer since late 2009 which has given her the opportunity to travel the world and make use of Visual Studio’s extensibility framework in an open source environment. Jasmine also teaches at a local community college and co-organises BrooklynJS. EPISODE DESCRIPTION: Phil’s guest on today’s show is Jasmine Greenaway. She has evolved her career as a web developer into an exciting life, full of opportunities and interest. Jasmine rarely says no to a chance to take her IT career in a new direction. As a result, today, she is a well-known public speaker, mentor and teacher. All of this is in addition to working as a Cloud Developer Advocate at Microsoft. She also co-organises BrooklynJS. KEY TAKEAWAYS: (00.57) – So Jasmine, can you expand on that brief introduction and tell us a little bit more about yourself? Jasmine explains that after leaving university, she decided to move to New York. This was a good move for her because it helped grow her confidence and get past being shy. She started public speaking, while in New York. First, she gave really short, lightning talks. In time, she graduated to making 30-minute presentations. Today, she regularly speaks at IT conferences. After joining the GitHub team she was asked to speak at a conference about the GitHub Visual Studio project she was working on. That led to someone from Microsoft reaching out to her and offering her the Advocate position. Despite not being very familiar with Azure, at the time, she took the plunge, which turned out to be a great decision for everyone involved. When someone asked her to teach web development in a local Queens’ community college she said yes to that too. She has been doing it for 2 years now and really enjoys seeing her students grow. Her work there combined with her speaking and meetups have helped her to build up a great network of friends, colleagues and collaborators. (4.00) – What have you learned working in what must be quite an interesting environment? Jasmine said that often she is dealing with students who have never opened a text editor or seen an ID. In those situations, she has learned to go slow and recap regularly. Going from nothing to doing a full project in just four months is a big task, which can be overwhelming. So, students need to be led along the path to success carefully. Phil asks if her students feel a sense of accomplishment once they have completed the course. Jasmine, says yes that is definitely the case. In the end, a lot of her students thank her for taking the time to go back over things they were struggling with. She often sits down with students for one to ones, even as they start their IT careers. Often, they are really close to achieving their goals. All they need is a little advice or encouragement to get there. (6.28) – Can you please share a unique career tip with the I.T. career audience? Jasmine says that it is important to be comfortable with what you know. Don’t let what you do not know, overwhelm you. Use what you have and recognize that you can easily learn the rest of what you need. It is all too easy to become overwhelmed and be too hard on yourself. Phil agrees that is very good advice and adds that breaking an objective down into smaller chunks makes things easier to understand. When you do that the task becomes far easier to achieve. Jasmine says that is the exact approach she uses when programming, especially if she has to learn something new to be able to complete the project. (8.07) – Can you tell us about your worst career moment? Jasmine explained that at one point in her career she let imposter syndrome overwhelm her. At the time, she was working on a team where everyone, except her, was a senior developer. Fairly quickly, she began to feel she was not contributing and could not get anything right. Fortunately, someone took her aside and told her she was doing a good job. They also told her not to be afraid to ask for help. Once she started doing that everything was OK. To this day, she is thankful for that team for picking up on the fact that she was struggling and reaching out to her to let her know they were there to help. (9.25) – What did you learn from that experience? It taught Jasmine to believe in herself and her capabilities. In that situation, the only person that thought she was not capable was herself. Once she was convinced otherwise by the team Jasmine was able to make rapid progress. (10.14) – What was your best career moment? Jasmine said that was the talk she gave in August 2018 with a co-worker. For fun, they decided to see if they could uncover the identity of the famous, but anonymous, horse.js using machine learning. The person who runs that Twitter account takes web development tweets and copies a sentence from them and tweets that back out again. Weirdly, this simple process produces some very amusing results. Because it is funny and quirky horse.js has a huge Twitter following. Jasmine and her co-worker used a combination of machine learning, data statistics and other methods to work out who horse.js is. At the latest JSConf they gave a presentation that explained how they did it. At the end, there was a pre-planned piece of pantomime, where the organizers would shoo them off of the stage before they could reveal who it was. Clearly, some in the audience thought they were going to uncover horse.js, which they definitely were not. They actually got booed off and ended up leaving the conference venue through the back entrance. Despite this, the project and speech were great fun for Jasmine. It gave her the chance to work collaboratively with her team using JavaScript. A language she rarely gets to work in. Plus, they produced a website about the process and the person they had concluded was horse.js agreed to having his name revealed on the site. Although he has still not confirmed or denied being horse.js. Basically, it was a fun project, that stretched Jasmine, helped her to gel with her team and become better known in the community. So, it has been a career highlight on many different levels. (14.00) – Can you tell us what excites you about the future of the IT industry and careers? The fact that if she wanted to try something else in the industry there are so many different paths she could take excites Jasmine. Her background is mostly software engineering, but she also now has her developer advocate and relations work to add into the mix. Jasmine especially enjoys being a part of a “choose your own adventure” style of team. If you are good at speaking, that can be your focus, while someone else might write a lot of code or seek out feedback from product teams. Jasmine is also excited by the fact that working for Microsoft automatically opens up all kinds of possibilities. She can easily move internally to try something different or take up an opportunity outside the business. She also enjoys the fact that the information you need to learn something new is now freely available. You just need to find a tutorial or blog post and get started. (15.54) – What drew you to a career in IT? For Jasmine, her journey into IT started when she wanted to customize her GeoCities, Neopets and MySpace accounts. Making little sites for herself was the spark. The fact that she wanted to be a meteorologist also pusher her into the IT world. It was part of the reason she decided to minor in computer science. She liked it so much that she ended up switching her major. (16.52) – What is the best career advice you have ever received? Don’t be afraid to ask questions. If you don’t you are not doing your job properly. Asking questions is tricky because you have to admit you don’t know something. But, it is essential. You end up feeling so much worse if you get things wrong because you did not seek clarification. (17.21) – If you were to begin your IT career again, right now, what would you do? Jasmine says she would probably get involved in the IT security field. Probably as a white hat hacker, right now, it is a really interesting sector to work in. (17.55) – What clear objective are you currently focusing on? Jasmine is now part of a fresh team that is focused on reaching out to the education community. Currently, she is looking for ways in which she can shine in this role. She is looking for ways to self-advocate and progress the team's objectives at the same time. (19.12) – What is the number one non-technical skill that has helped you the most in your IT career, so far? Being an effective communicator has been essential for Jasmine. She mostly works remotely, so has to be particularly careful to communicate well. It is essential to tailor what you are saying to take account of the audience you are speaking to. You have to adapt your approach to ensure that what you are saying is easy to digest and understand. Jasmine has found that getting involved in things like hobby channels has helped her with this. Sharing tips, suggestions, jokes and things in a casual setting has helped her to hone her communication skills. (20.58) – Phil asks Jasmine to share a final piece of career advice with the audience. She says it is the same as the advice she received – Don’t be afraid to ask questions. It is the only way to get the clarification you need to be able to move forward. If you do not get into this habit you will very likely stall. At first, you may feel embarrassed doing it. But, it is like a muscle. The more you do it the easier it gets. Phil says that he has also found this to be true. He has noticed that the more questions you ask the more confident you become, which is the opposite of what you might expect. BEST MOMENTS: (6.22) JASMINE – "Sometimes it's just, you know, one little thing that they just need to clear the air on to get them to where they need to be." (7.23) PHIL – "break down that objective into smaller chunks, so that it becomes easier to understand.” (14.23) JASMINE – "If I wanted to try something else in the industry, there are so many paths I can take." (16.54) JASMINE – "If you’re not asking questions, you’re not doing your job." (21.55) PHIL – "The more you ask questions, the more confident you get.” CONTACT JASMINE: Twitter: https://twitter.com/paladique LinkedIn: https://www.linkedin.com/in/jasminegreenaway Github: https://github.com/paladique
KBall picks the brains of 4 of the speakers at JSConf Hawai’i to investigate the future of JavaScript and Web Development.
KBall picks the brains of 4 of the speakers at JSConf Hawai’i to investigate the future of JavaScript and Web Development.
Mike Samuels https://twitter.com/mvsamuel https://github.com/mikesamuel/attack-review-testbed https://nodejs-security-wg.slack.com/ Hardening NodeJS Speaking engagement talks: A Node.js Security Roadmap at JSConf.eu - https://www.youtube.com/watch?v=1Gun2lRb5Gw Improving Security by Improving the Framework @ Node Summit - https://vimeo.com/287516009 Achieving Secure Software through Redesign at Nordic.js - https://www.facebook.com/nordicjs/videos/232944327398936/?t=1781 What is a package: (holy hell, why is this so complicated?) A package is any of: a) a folder containing a program described by a package.json file b) a gzipped tarball containing (a) c) a url that resolves to (b) d) a @ that is published on the registry with © e) a @ that points to (d) f) a that has a latest tag satisfying (e) g) a git url that, when cloned, results in (a). https://medium.com/@jsoverson/exploiting-developer-infrastructure-is-insanely-easy-9849937e81d4 https://blog.risingstack.com/node-js-security-checklist/ https://www.npmjs.com/package/trusted-types https://github.com/WICG/trusted-types/issues/31
NESTED LOOPS is a JavaScript band that combines music and video with web tech to perform live at JSConf. In this episode, Jerod and Suz are joined by Jan Monschke and Kahlil Lechelt, which comprise 2/3 of the group. After sampling one of their tracks, we hear the story of how they got the band together, the journey of building a tech stack for their first live performance, and how that stack was then rewritten to be “good” for their second performance. Suz is at awe with the technologies at play. Jerod wonders if there’s room in the world for musicians directly targeting JavaScript devs. A good time is had by all.
NESTED LOOPS is a JavaScript band that combines music and video with web tech to perform live at JSConf. In this episode, Jerod and Suz are joined by Jan Monschke and Kahlil Lechelt, which comprise 2/3 of the group. After sampling one of their tracks, we hear the story of how they got the band together, the journey of building a tech stack for their first live performance, and how that stack was then rewritten to be “good” for their second performance. Suz is at awe with the technologies at play. Jerod wonders if there’s room in the world for musicians directly targeting JavaScript devs. A good time is had by all.
KBall interviews with Michael Chan, Juan Pablo Buriticá and Julián David Duque, and Tim Doherty at JSConf.US. Conversations about the importance of DRY code, the metaphors we use for software, JavaScript communities across Latin America, how to advocate for modern tech stacks in large companies, and fostering mentorship.
KBall interviews with Michael Chan, Juan Pablo Buriticá and Julián David Duque, and Tim Doherty at JSConf.US. Conversations about the importance of DRY code, the metaphors we use for software, JavaScript communities across Latin America, how to advocate for modern tech stacks in large companies, and fostering mentorship.
Panel Brendan Eich Joe Eames Aaron Frost AJ ONeal Jamison Dance Tim Caswell Charles Max Wood Discussion 01:57 – Brendan Eich Introduction JavaScript [Wiki] Brendan Eich [Wiki] 02:14 – Origin of JavaScript Java Netscape Jim Clark Marc Andreesen NCSA Mosaic NCSA HTTPd Lynx (Web Browser) Lou Montulli Silicon Graphics Kernel Tom Paquin Kipp Hickman MicroUnity Sun Microsystems Andreas Bechtolsheim Bill Joy Sun-1 Scheme Programming Language Structure and Interpretation of Computer Programs – 2nd Edition (MIT Electrical Engineering and Computer Science) by Harold Abelson, Gerald Jay Sussman & Julie Sussman Guy Steele Gerald Sussman SPDY Rob McCool Mike McCool Apache Mocha Peninsula Creamery, Palo Alto, CA Main () and Other Methods (C# vs Java) Static in Java, Static Variables, Static Methods, Static Classes 10:38 – Other Languages for Programmers Visual Basic Chrome Blacklist Firefox 12:38 – Naming JavaScript and Writing VMs Canvas Andrew Myers 16:14 – Envisioning JavaScript’s Platform Web 2.0 AJAX Hidaho Design Opera Mozilla Logo Smalltalk Self HyperTalk Bill Atkinson HyperCard Star Wars Trench Run 2.0 David Ungar Craig Chambers Lars Bak Strongtalk TypeScript HotSpot V8 Dart Jamie Zawinski 24:42 – Working with ECMA Bill Gates Blackbird Spyglass Carl Cargill Jan van den Beld Philips Mike Cowlishaw Borland David M. Gay ECMAScript Lisp Richard Gabriel 31:26 – Naming Mozilla Jamie Zawinski Godzilla 31:57 – Time-Outs 32:53 – Functions Clojure John Rose Oracle Scala Async.io 38:37 – XHR and Microsoft Flash Hadoop Ricardo Jenez Ken Smith Brent Noorda Ray Noorda .NET Shon Katzenberger Anders Hejlsberg NCSA File Formats 45:54 – SpiderMonkey Chris Houck Brendan Eich and Douglas Crockford – TXJS 2010 Douglas Crockford JavaScript: The Good Parts by Douglas Crockford TXJS.com ActionScript Flex Adobe E4X BEA Systems John Schneider Rhino JScript roku Waldemar Horwat Harvard Putnam Math Competition Chris Wilson Silverlight Allen Wirfs-Brock NDC Oslo 2014 JSConf Brendan JSConf Talks 59:58 – JavaScript and Mozilla GIP SSLeay Eric A. Young Tim Hudson Digital Styles Raptor Gecko ICQ and AIM PowerPlant CodeWarrior Camino David Hyatt Lotus Mitch Kapor Ted Leonsis Mitchell Baker David Baren Phoenix Tinderbox Harmony 1:14:37 – Surprises with Evolution of JavaScript Ryan Dahl node.js Haskell Elm Swift Unity Games Angular Ember.js Dojo jQuery react ClojureScript JavaScript Jabber Episode #107: ClojureScript & Om with David Nolen MVC 01:19:43 – Angular’s HTML Customization Sweet.js JavaScript Jabber Episode #039: Sweet.js with Tim Disney TC39 Rick Waldron 01:22:27 – Applications with JavaScript SPA’s Shumway Project IronRuby 01:25:45 – Future of Web and Frameworks LLVM Chris Lattner Blog Epic Games Emscripten Autodesk PortableApps WebGL 01:29:39 – ASM.js Dart.js John McCutchen Monster Madness Anders Hejlsberg, Steve Lucco, Luke Hoban: TypeScript 0.9 – Generics and More (Channel 9, 2013) Legacy 01:32:58 – Brendan’s Future with JavaScript Picks hapi.js (Aaron) JavaScript Disabled: Should I Care? (Aaron) Aaron’s Frontend Masters Course on ES6 (Aaron) Brendan’s “Cool Story Bro” (AJ) [YouTube] Queen – Don't Stop Me Now (AJ) Trending.fm (AJ) WE ARE DOOMED soundtrack EP by Robby Duguay (Jamison) Hohokum Soundtrack (Jamison) Nashville Outlaws: A Tribute to Mötley Crüe (Joe) Audible (Joe) Stripe (Chuck) Guardians of the Galaxy (Brendan)
Panel Brendan Eich Joe Eames Aaron Frost AJ ONeal Jamison Dance Tim Caswell Charles Max Wood Discussion 01:57 – Brendan Eich Introduction JavaScript [Wiki] Brendan Eich [Wiki] 02:14 – Origin of JavaScript Java Netscape Jim Clark Marc Andreesen NCSA Mosaic NCSA HTTPd Lynx (Web Browser) Lou Montulli Silicon Graphics Kernel Tom Paquin Kipp Hickman MicroUnity Sun Microsystems Andreas Bechtolsheim Bill Joy Sun-1 Scheme Programming Language Structure and Interpretation of Computer Programs – 2nd Edition (MIT Electrical Engineering and Computer Science) by Harold Abelson, Gerald Jay Sussman & Julie Sussman Guy Steele Gerald Sussman SPDY Rob McCool Mike McCool Apache Mocha Peninsula Creamery, Palo Alto, CA Main () and Other Methods (C# vs Java) Static in Java, Static Variables, Static Methods, Static Classes 10:38 – Other Languages for Programmers Visual Basic Chrome Blacklist Firefox 12:38 – Naming JavaScript and Writing VMs Canvas Andrew Myers 16:14 – Envisioning JavaScript’s Platform Web 2.0 AJAX Hidaho Design Opera Mozilla Logo Smalltalk Self HyperTalk Bill Atkinson HyperCard Star Wars Trench Run 2.0 David Ungar Craig Chambers Lars Bak Strongtalk TypeScript HotSpot V8 Dart Jamie Zawinski 24:42 – Working with ECMA Bill Gates Blackbird Spyglass Carl Cargill Jan van den Beld Philips Mike Cowlishaw Borland David M. Gay ECMAScript Lisp Richard Gabriel 31:26 – Naming Mozilla Jamie Zawinski Godzilla 31:57 – Time-Outs 32:53 – Functions Clojure John Rose Oracle Scala Async.io 38:37 – XHR and Microsoft Flash Hadoop Ricardo Jenez Ken Smith Brent Noorda Ray Noorda .NET Shon Katzenberger Anders Hejlsberg NCSA File Formats 45:54 – SpiderMonkey Chris Houck Brendan Eich and Douglas Crockford – TXJS 2010 Douglas Crockford JavaScript: The Good Parts by Douglas Crockford TXJS.com ActionScript Flex Adobe E4X BEA Systems John Schneider Rhino JScript roku Waldemar Horwat Harvard Putnam Math Competition Chris Wilson Silverlight Allen Wirfs-Brock NDC Oslo 2014 JSConf Brendan JSConf Talks 59:58 – JavaScript and Mozilla GIP SSLeay Eric A. Young Tim Hudson Digital Styles Raptor Gecko ICQ and AIM PowerPlant CodeWarrior Camino David Hyatt Lotus Mitch Kapor Ted Leonsis Mitchell Baker David Baren Phoenix Tinderbox Harmony 1:14:37 – Surprises with Evolution of JavaScript Ryan Dahl node.js Haskell Elm Swift Unity Games Angular Ember.js Dojo jQuery react ClojureScript JavaScript Jabber Episode #107: ClojureScript & Om with David Nolen MVC 01:19:43 – Angular’s HTML Customization Sweet.js JavaScript Jabber Episode #039: Sweet.js with Tim Disney TC39 Rick Waldron 01:22:27 – Applications with JavaScript SPA’s Shumway Project IronRuby 01:25:45 – Future of Web and Frameworks LLVM Chris Lattner Blog Epic Games Emscripten Autodesk PortableApps WebGL 01:29:39 – ASM.js Dart.js John McCutchen Monster Madness Anders Hejlsberg, Steve Lucco, Luke Hoban: TypeScript 0.9 – Generics and More (Channel 9, 2013) Legacy 01:32:58 – Brendan’s Future with JavaScript Picks hapi.js (Aaron) JavaScript Disabled: Should I Care? (Aaron) Aaron’s Frontend Masters Course on ES6 (Aaron) Brendan’s “Cool Story Bro” (AJ) [YouTube] Queen – Don't Stop Me Now (AJ) Trending.fm (AJ) WE ARE DOOMED soundtrack EP by Robby Duguay (Jamison) Hohokum Soundtrack (Jamison) Nashville Outlaws: A Tribute to Mötley Crüe (Joe) Audible (Joe) Stripe (Chuck) Guardians of the Galaxy (Brendan)
Panel Brendan Eich Joe Eames Aaron Frost AJ ONeal Jamison Dance Tim Caswell Charles Max Wood Discussion 01:57 – Brendan Eich Introduction JavaScript [Wiki] Brendan Eich [Wiki] 02:14 – Origin of JavaScript Java Netscape Jim Clark Marc Andreesen NCSA Mosaic NCSA HTTPd Lynx (Web Browser) Lou Montulli Silicon Graphics Kernel Tom Paquin Kipp Hickman MicroUnity Sun Microsystems Andreas Bechtolsheim Bill Joy Sun-1 Scheme Programming Language Structure and Interpretation of Computer Programs – 2nd Edition (MIT Electrical Engineering and Computer Science) by Harold Abelson, Gerald Jay Sussman & Julie Sussman Guy Steele Gerald Sussman SPDY Rob McCool Mike McCool Apache Mocha Peninsula Creamery, Palo Alto, CA Main () and Other Methods (C# vs Java) Static in Java, Static Variables, Static Methods, Static Classes 10:38 – Other Languages for Programmers Visual Basic Chrome Blacklist Firefox 12:38 – Naming JavaScript and Writing VMs Canvas Andrew Myers 16:14 – Envisioning JavaScript’s Platform Web 2.0 AJAX Hidaho Design Opera Mozilla Logo Smalltalk Self HyperTalk Bill Atkinson HyperCard Star Wars Trench Run 2.0 David Ungar Craig Chambers Lars Bak Strongtalk TypeScript HotSpot V8 Dart Jamie Zawinski 24:42 – Working with ECMA Bill Gates Blackbird Spyglass Carl Cargill Jan van den Beld Philips Mike Cowlishaw Borland David M. Gay ECMAScript Lisp Richard Gabriel 31:26 – Naming Mozilla Jamie Zawinski Godzilla 31:57 – Time-Outs 32:53 – Functions Clojure John Rose Oracle Scala Async.io 38:37 – XHR and Microsoft Flash Hadoop Ricardo Jenez Ken Smith Brent Noorda Ray Noorda .NET Shon Katzenberger Anders Hejlsberg NCSA File Formats 45:54 – SpiderMonkey Chris Houck Brendan Eich and Douglas Crockford – TXJS 2010 Douglas Crockford JavaScript: The Good Parts by Douglas Crockford TXJS.com ActionScript Flex Adobe E4X BEA Systems John Schneider Rhino JScript roku Waldemar Horwat Harvard Putnam Math Competition Chris Wilson Silverlight Allen Wirfs-Brock NDC Oslo 2014 JSConf Brendan JSConf Talks 59:58 – JavaScript and Mozilla GIP SSLeay Eric A. Young Tim Hudson Digital Styles Raptor Gecko ICQ and AIM PowerPlant CodeWarrior Camino David Hyatt Lotus Mitch Kapor Ted Leonsis Mitchell Baker David Baren Phoenix Tinderbox Harmony 1:14:37 – Surprises with Evolution of JavaScript Ryan Dahl node.js Haskell Elm Swift Unity Games Angular Ember.js Dojo jQuery react ClojureScript JavaScript Jabber Episode #107: ClojureScript & Om with David Nolen MVC 01:19:43 – Angular’s HTML Customization Sweet.js JavaScript Jabber Episode #039: Sweet.js with Tim Disney TC39 Rick Waldron 01:22:27 – Applications with JavaScript SPA’s Shumway Project IronRuby 01:25:45 – Future of Web and Frameworks LLVM Chris Lattner Blog Epic Games Emscripten Autodesk PortableApps WebGL 01:29:39 – ASM.js Dart.js John McCutchen Monster Madness Anders Hejlsberg, Steve Lucco, Luke Hoban: TypeScript 0.9 – Generics and More (Channel 9, 2013) Legacy 01:32:58 – Brendan’s Future with JavaScript Picks hapi.js (Aaron) JavaScript Disabled: Should I Care? (Aaron) Aaron’s Frontend Masters Course on ES6 (Aaron) Brendan’s “Cool Story Bro” (AJ) [YouTube] Queen – Don't Stop Me Now (AJ) Trending.fm (AJ) WE ARE DOOMED soundtrack EP by Robby Duguay (Jamison) Hohokum Soundtrack (Jamison) Nashville Outlaws: A Tribute to Mötley Crüe (Joe) Audible (Joe) Stripe (Chuck) Guardians of the Galaxy (Brendan)
KBall and Chad Hietala meet up at JSConf and talk about compilers for the frontend, Ember’s binary opcodes, webassembly, and the future of performance optimization for the web.
KBall and Chad Hietala meet up at JSConf and talk about compilers for the frontend, Ember’s binary opcodes, webassembly, and the future of performance optimization for the web.
The startup story behind the simple, powerful, event software that has sold over €300M worth of tickets sold online by thousands of organisers around the world. What do tech-savvy conferences around the globe including Web Summit, JSConf, Twilio, Shopify and Strange Loop have in common? The all leverage the clever event management software from Tito.io, a small 10-person, Dublin (Ireland) startup you’ve likely never heard of. What’s even more interesting is that Tito is on track to process more than half a billion in event ticket sales by 2019. The company has also caught the eye and the angel funding of Amazon CTO, Werner Vogels and Intercom Co-Founder, Des Traynor. The secret to the company’s success to date? The confidence of event planners coupled with an intense focus on building a great product, creating a great customer experience, and instilling trust within each and every customer. In a marketplace that’s rife with vendors foisting surprise fees, cumbersome registration, poor UIs and third-party tracking on users, Tito provides a fast, beautiful, transparent & trusted, online ticket experience that’s fully hosted or embedded on a customer’s site in just a few lines of code. Tito’s features have already powered thousands of successful events worldwide. On today's tech podcast I chat with co-founder Paul Campbell who discusses how Tito has created a growth juggernaut in a marketplace where the headlines are dominated by large competitors including Eventbrite and Bizzabo. Other topics we address that inspire event organizers to use Tito include: If you focus on building a great product that customers want to pay for, it can work out - well. if you have a strict data privacy policy and a simple checkout UX - it can work out really, really well for an event management startup. If you respect your customer and do not “growth hack” them, they’ll naturally support you and champion you in the marketplace. Your customers’ customers’ email addresses are precious and need to be treated as such. Respect your customer’s wishes and never email market to their customers...and the market will come to you.
In this special episode of JS Party at JS Conf in Carlsbad, Nick, Suz, Feross, and KBall talk about crazy JavaScript combinations, tips to get started speaking, being committed to diversity as a conference organizer, and much more.
In this special episode of JS Party at JS Conf in Carlsbad, Nick, Suz, Feross, and KBall talk about crazy JavaScript combinations, tips to get started speaking, being committed to diversity as a conference organizer, and much more.
Jerod, Nick, KBall, and Chris pre-party for JSConf by testing out some brand new segment ideas: Story of the Week, What the WHAT… WG, and Protip Time. What do you think of these segments? Like ’em? Love ’em? Not sure why we even? Please let us know!
Jerod, Nick, KBall, and Chris pre-party for JSConf by testing out some brand new segment ideas: Story of the Week, What the WHAT… WG, and Protip Time. What do you think of these segments? Like ’em? Love ’em? Not sure why we even? Please let us know!
In this episode, Kristian Freeman tells us about ByteConf React: why he decided to start the conference, unique challenges of putting an online conference together, what he expects in terms of viewership and his hope for sponsors, and supporting speakers who haven't recorded videos or maybe haven't ever even given a talk before. ByteConf will take place on Friday, August 31, 2018! Grab your ticket! References: Twitter Facebook Twitch This show was produced by Mandy Moore, aka @therubyrep of DevReps, LLC. TRANSCRIPT: ROBERT: Hello, everyone. Welcome to Episode #108 of The Frontside Podcast. I'm Robert De Luca, the president here at Frontside and I'll be your episode host. Today, we're going to be discussing ByteConf, which is an online stream conference with Kristian Freeman. Kristian is a developer at Product Hunt. With me today as co-host is Wil Wilsman who is a software developer here at The Frontside. Before we jump into the discussion, I would like to make a little announcement. I'm going to be speaking at ByteConf and JSConf for BigTest. If you're interested in hearing about the next generation of UI testing for single page apps, you don't want to check that one out, I think. Without further ado, let's just jump into it. Hey Kristian, how are you doing? KRISTIAN: Hey. Thank you for having me. It's a pleasure to be here. ROBERT: You recently just moved to Austin and you moved from LA. How's that thing going? KRISTIAN: It's actually going really good. We packed all our stuff up and drove all the way across the US. I guess that's not really across the whole US but it was a good move. I've been here for about two weeks or so and I'm really happy with it so far. I have a full office and recording space now, so it's glorious. I can actually sprawl out and have mikes and all kinds of other gear out. I'm very excited. WIL: Nice. Now, what is it you do at Product Hunt? KRISTIAN: I'm a software developer there, kind of full stack engineer. Product Hunt is architected basically as a Rails app in the backend and then, a React app in the frontend, so I'm doing React obviously and GraphQL stuff and then Rails on the backend. It's been really cool. It's a really neat product and there's a really cool community there as well, so I'm been very happy with the transition. I've been there since the beginning of the year, so February or so. ROBERT: That's awesome. Are those projects split so it's like the React app separate from the Rails apps or is it like a monolith? KRISTIAN: It's a good question. I am not sure if it's planned to be split up eventually but as it stands right now, it's actually all one big application. We just have kind of that classic frontend folder where everything is dropped in and that's React related. We have some interesting stuff around server side rendering and things like that. All of that stuff was kind of there before I started working at Product Hunt but it's been really interesting coming from my previous gig where it was just very straightforward Ruby on Rails and then React like it's a totally separate thing, like they weren't really related at all as working on a couple of different projects. Coming to this, it has been really interesting. It kind of gives me a better sense of what Rails projects might look like in 2018, if that makes sense. ROBERT: Right, yeah. Are you using like the webpacker gem? KRISTIAN: I don't. I mean, it's not old really, in terms of web projects overall than in terms of like a Rails app. It's still running on an older version. I think we're pretty homegrown set up. We're not using webpacker. We kind of set things up and run them as like two different processes and stuff like that. It's been really interesting. There is a bit of onboarding stuff that it took me a while because I came from doing, like I said, kind of standard Rail stuff and I would say that they are really kind of pushing what you can do with half Rails, half React set up. There's a bit of time of me kind of flailing around and figuring out what was going on but it's been really cool. I definitely feel like I leveled up in my understanding of how all that stuff can fit together over the last couple of months or so. ROBERT: That's awesome. You're running a conference, right? You're running an online-only conference for free and streamed on Twitch. That's pretty bold thing, right? That's a new concept. How do that come together? I guess before we even discuss that, what is ByteConf? KRISTIAN: I'll start with the synopsis of what it is and I can talk a little bit about history. It's actually a conference series. I have other events planned and the first of those is ByteConf React, which Robert is speaking at. It's a React in JavaScript conference that is streamed on twitch. If listeners aren't familiar with Twitch, it's a live streaming platform. Kind of the primary use for it is for gaming. There's a lot of people who will stream themselves playing like Fortnight or whatever other things. I usually just watch Fortnight. It is primarily for gaming and in the last couple of years, they've started doing this separate section called the creative section, where there is non-gaming stuff. I've watched people paint. I've watched people play guitar or take song requests on the stream and all kinds of interesting stuff. What I can say is the idea for the conference wasn't a thing that I just came up with on the spot. I actually attended a really small conference that was streamed on Twitch. It was a game development conference. I wish I could remember what it was called but it was really interesting. There wasn't too many people in the stream but I was impressed with the way that it was put together, especially for a topic like game development, which is I would say, I kind of took a stab at it last year and I found it to be pretty difficult to get into and fairly opaque in terms of understanding how to get started and then make that progression into a career. I watched it and I enjoyed the format of the conference but I didn't really get learned too much from it because it was just too kind of complicated, I think unless you already were in the field. I started thinking about that and I thought it was a really interesting model and I felt like web development in particular, would be a really neat way to approach that format because web development has, I think a reputation if you want to get into programming. I don't know if I would say, entirely approachable. There's still a learning curve and there is a lot of work that you have to put into it too to get like junior dev role somewhere but I thought it was really interesting. I thought it would be interesting to take that format and apply it. My background, besides doing straightforward full stack engineering, I've done some courses for Pluralsight. I've done some in-person technical training, so I had a background in teaching and I felt like it would be an interesting just to try it and see what would happen. So far, we're a couple of weeks out from the conference and honestly it's been pretty wild how many people are excited about the conference. I don't think I've ever done a project on my own, like a side project that has had people that just tweeting about it without me prompting it or anything like that. I saw something on YouTube today like a Spanish YouTuber who does tech news and he was talking about the conference. I don't know Spanish. I was curious and wanted to see what he's talking about but I couldn't really understand what he's saying but I saw the logo and I was like, "What? This is crazy." I'm really excited about it and I'm sure we'll kind of get into this but there's some really interesting implications and ways that this format, I think it will be a different approach to the usual tech conference format. I'm really excited about it and I think it's going to be really neat. ROBERT: It's awesome that it's free and available for anybody at any time. KRISTIAN: Right and a part of that, I think when I started thinking about it like, "Can I make it free? What are the implications of that?" I think that the main thing is that when it comes to running a conference, getting the location or whatever, I would say is probably by far, the most expensive component of that. For me, I'm a remote developer and there's a lot of people that I talk to day-to-day. I think a lot of kind of my audience and people that I know online are also working remotely, so for the conference to just be online, it wasn't too crazy of an idea for me because most of the interactions I've done in development stuff like that have been through the context of remote work. But also, for people who aren't remote workers, who are getting into the field or even just have a small interest in web development, I think it removes some barriers of being able to access this kind of stuff. You know, if we can look back at the future and say, "This sounds very ambitious," but kind of a democratizing force of anyone can view this content and get access to it regardless of their skill level or economic level or things like that. WIL: I frequent trips sometimes and I know this is obviously, a free conference but are you expecting any donations? KRISTIAN: That's a good question. That's kind of one of those things I haven't really figured out the best way to do yet. In Twitch, I think there's the concept like 'Bits.' Is that what they're called? They're like microdonations. I genuinely don't know how that's going to work out. I know the plan is to take the talks after the fact and get any kind of additional slides and stuff like that. We're doing a couple of pre-conference events that I can talk about. I guess I should plug those as well before we wrap up but the way that that's going to work, I am not quite sure because I would like to sell the packages after the fact and actually, being able to pay the speakers. But in terms of little of bits and stuff like that, I'm not actually sure. I'm genuinely curious how that's going to work out. I don't know if people will do that. I guess it just kind of depends on the audience. ROBERT: -- In my talk now. KRISTIAN: Yeah, give me Bits please. ROBERT: "I intended to write, don't move to the next slide." KRISTIAN: Yeah. I use Twitch every once in a while. I said, I generally just watch like one game on Twitch but I don't watch Twitch all day, every day. I think it'll be interesting to see because this is probably a different audience than, say the average Twitch user. It'll be really interesting to see how that shakes out. I don't really have a great answer for you there. WIL: Do you have any guests like a number of people that are going to be attending? I see on the ByteConf site, there are 1500 subscribers. KRISTIAN: That's a good question. I guess I can talk about this stuff that we have planned before the conference. We've been building an audience for really, it hasn't been that long. It's been like four or five months since I announced it. We're using kind of dogfooding a thing that I've worked on a Project Hunt, which is this Ship product, which is for collecting emails and sending out newsletters and stuff like that. ROBERT: I saw that get announced not too long ago. KRISTIAN: Yeah, it's really cool. I'm really happy with the product and they have some built-in promotional tools on the site, which is pretty neat. But we have, I think like 1500 people on the mailing list. I think, we have, the last I checked, about like 4200 followers on Twitter. It's hard to convert that like how many people are actually going to attend. What we are doing and this is like A, because I think it be interesting and B, to kind of gauge this, hopefully as best we can. We're going to be doing some preconference like 'Ask me anything' interviews with some of the speakers and I'm hoping I can get a better sense of how many people will actually start attending any of the events that happen. The way the Twitch works is you can follow and subscribe. You'll get a notification when a channel goes live. The first time that we go live will be tomorrow, actually and so, we'll see how many people will turn out and it should be interesting. But in terms of actual numbers, I genuinely am not sure. I would hope that a lot of people who are on the mailing list will be there but it's been pretty neat. I've already been hearing of people who are trying to setup like in-person events, viewing parties and stuff like that. I've tried to help coordinate that as best I can without taking over the limited amount of time I have before the conference actually happens. Also, people in Europe and vastly in different time zones are actually kind of grilling me about, "When can I watch this? Will you do every broadcast so I can actually attend this because I don't want to see the conference at two in the morning," and I'm like, "Yeah, I know. I understand that." We're kind of figuring out those details as well. Like I said, I very much consider this like the MVP of a longer term event series so I'm excited. I think it will end up building something that a lot of people will attend multiple times and hopefully, we can expose people to new stuff as that happens. ROBERT: You mentioned that somebody in Europe like wanting to know like, "When I can watch this?" which actually makes me wonder like that's one of the unique challenges that you have for an online-only conference because no one's going to be asking that question if the conference is in... I don't know, LA, right? Everybody knows where it's going to be because it's all co-located, so what are some other unique challenges that come with running an online conference? KRISTIAN: That's a great question. We don't have the explicit location and time that it starts to kind of point people to. In some ways, it's a positive thing. We have a lot of people who can attend that normally wouldn't be able to. They're excluded by price, location and stuff like that but there are some things that you, I think kind of give up when you do the online format instead. One of those is just being there at the conference and running into people that may be you know or having sponsors with booths set up, where you can make a connection in that way. Some of that, we're trying to solve by building an active community. We have a Discord server that we started a couple of weeks ago, where people are chatting about this kind of stuff. I really think of it as like there's probably many ways to solve this problem and I'm trying a couple of different ways to see what sticks. Building a community where people can continue to talk before the conference, obviously they already are doing that and then continue after the fact and build the kind of connections and relationships and community that would maybe happen organically or at least, have a chance to happen organically in an actual physical conference. Some of the stuff, I genuinely still trying to figure it out like how best to give people the sense that they are welcomed and I guess, kind of feel like they're part of a community of developers. I remember when I started the conference, one of the first things I thought about was when I first went to a conference in San Francisco that Heroku put on and I remember being there, I was very, very junior as a developer and I remember sitting there being like, "Whoa. This is probably the first time I've ever been in a room with a bunch of other hundreds and hundreds of developers," and it was real interesting. It's one of the first times that I was like, "I actually am for real, doing this. This is pretty cool." I'm trying to figure and imagine and we'll iterate on this in the future like how best to give people that experience. Maybe that means doing a couple of physical ByteConf events. I'm thinking about that definitely but also, how do we keep the original idea of the format but also, how people feel like they're part of a community. It's very much a work in progress. WIL: I could see a future where you have a physical, smaller conference but you still stream it on Twitch and everybody could still attend. KRISTIAN: Exactly, yeah. I think that's probably the format. ROBERT: That'd be rad. KRISTIAN: One of the things that I thought would be interesting would be to do some kind of and actually, I think about this before when I moved out to Austin, like doing some kind of West Coast tour where we go up the West Coast and do events, maybe every a couple of nights in a really small format. The same kind of conferencing they have people from that area, come and give a talk but still stream that on Twitch. It's kind of a hybrid approach that the people who are already part of the community can still attend but for people who want that physical experience, they can do that as well. ROBERT: That's awesome and if you did that, then you wouldn't necessarily lose the whole way track. One of the things that I really love about attending conference is like the talks are great but I usually always find those online afterwards. But what I can't find online afterwards is the communication and the talk that I have with people that are there. That's an interesting challenge to have, maybe you could have... I don't know, like not to tell you how or what to do, maybe like a channel in the Discord for a Hallway Track channel or something that encourages conversation, maybe outside of but in connection with the talk. But I would just say, maybe that's just one of the tradeoffs that you're willing to have for an online-only conference. There are a plethora of things that you just shed by not having it out at a physical location, like a bunch of cost for one and AV setup and worrying about people connecting and getting and presenting properly -- KRISTIAN: Via conference Wi-Fi. If they have problems, that will be their house Wi-Fi. ROBERT: Yeah, exactly. KRISTIAN: I totally agree. I think it's not the worst problem to have because we're in a lot of ways kind of simplifying and really, it's the kind of thing that we can iterate on over time. When I was talking about the European time zone thing, I may be sounded like I was bothered by people reaching out or whatever. It's actually quite the opposite. It's really exciting and I have actively kind of sought feedback out and been like, "How can I do this better? How can I communicate this decision or that decision?" or even help me make this decision so that it's best that I do whatever works best for the community and I expect that will, as the community grows, just be more and more a factor. I think that's the kind of thing that tying up like the Hallway Track or something like that. I'm confident that people will have opinions on that and they'll say like, "This is what would work for me best to feel like I'm part of this community," and we're going to definitely try those things and iterate on them. It's not the worst problem to have because there is really nowhere to go but up, in terms of how we do it well and stuff like that. ROBERT: Good problems to have. KRISTIAN: Yeah, exactly. ROBERT: All the talks are prerecorded, right? What have you done or have you done anything to help support people who haven't recorded a video for speakers? What are you doing to kind of ease speakers into this new style? KRISTIAN: Yeah, it's interesting because in terms of a speaking lineup, there is clearly, some people who have experience both as conference speakers, also in particular in this format. It's basically recording like a Screencast. It's more or less the same thing. It's slightly a different format, maybe condensed to a shorter, like an hour talk. There are some people: Kentcdodds, Tracy Lee, they're two of our keynote speakers, I guess you could say. They have a ton of experience. They're pretty much giving talks regularly all the time, so for them, this is this is no biggie. But there are a couple of people I've tried to, like in terms of once we got our CFP, our call-for-paper, we were accepting talks submissions and also getting information about the speakers themselves like, "What is your experience of speaking at conferences? Do you have any experience speaking at conferences?" What I thought would be in the spirit of the conference itself and kind of our ideals and even, I would say like the ethics of how we think about this kind of stuff, I do actually think about it in that term. We want to have speakers that represent that. You know, bringing anyone from any experience level, in any location and stuff like that and having them be able to attend the conference and also speak at the conference. There's a couple people that just don't have a ton of experience speaking at conferences or even keep doing this kind of Screencast format and so, for those people like kind of the silly one, I've just been reaching out to them like, "If you need any help on the stuff, let me know. I've done this a couple of times, at least the Screencast part of it, I have a ton of experience with them, so if you need help, let me know of that." Also, if someone needed it, we bought them a mike and a webcam and we sent it to them and be like, "Don't need to worry about that because that's potentially --" ROBERT: Woah, that's awesome. KRISTIAN: Yeah. That can be like an economic kind of thing to make people feel uncomfortable, like maybe, you can't afford a mike or something like that but we will cover you and no strings attached. That kind of stuff, I think is really important. I think, the kind of the main thing is we just want people to feel comfortable. There is no reason that because someone hasn't given a talk at a conference before, there's no reason they can't start. Everyone has something interesting to say, I think and everyone's experiences is really interesting and brings a perspective. Especially in the conference format, I think it will bring a perspective that you're not used to seeing at a conference. Not to say that the kind of perspective of people who are super experienced and things like that. As a developer, as a conference speaker, that's obviously really useful but it's also useful to see things from the perspective of someone who is just getting into the industry. I think that being able to amplify those voices is really interesting and exciting to me. I'm sure there's probably ways that we could do this better in the future but for now, it's been just kind of like supporting them whenever they need it and trying to be encouraging and then any kind of small things like buying a make or something, we can provide that. ROBERT: That's awesome. There are some tradeoffs you could make always with anything but it's almost, I want to say better, to give your first conference talk or one of your first conference talk in this way. I know I was really excited about it when I first heard about it because I get pretty nervous getting up in front of people. At JSConf, I don't know how many people. It kind of gives me anxiety but with ByteConf, it's pre-recorded so I have the ability to go back and polish everything that I want and I can remove those odds and things like, "Oh, wait. That didn't quite slow right. Let me fix that real quick," or, "I didn't really like what I said there. I can go back and fix it." It does come with the added complexity of like, "Now, I have to go and cut it together and make sure that there's this whole post-production aspect of it," but it makes me feel a lot better because I feel that I can deliver something that I feel really good about and I know because I've watched it six times and gone over it with a fine-tooth comb, you know? KRISTIAN: Right. One of the things that I am hoping that we can do in the future is in terms of the editing and stuff like that. If someone feels comfortable like really fine-tuning their talk and stuff like that and giving almost a finished product to us, we're happy to obviously accept that but for people who just don't have that ability or needs some help in refining, I don't want to say the quality of their talk but just kind of the delivery of it, we can definitely help with that. In terms of refining, say you're going to give the talk again in your case, I think it's really interesting also. We're trying to coordinate as with as many of the speakers as we can, kind of like time zone permitting and things like that, having them in the 'attending the conference,' or 'viewing the conference,' and also being available in the Twitch chat and not necessarily having an interview there but maybe, if something comes up or someone is like, "I don't get what this slide means," or something like that and that's both an opportunity for, we're not going to like pause the talk or anything but the speaker can be there to clarify and add that additional, I guess dimension of understanding of what's going on in the talk. I think it's actually really interesting. I'm really curious to see how it turned out. WIL: Yeah, I'm curious too because I [inaudible] with Twitch sometimes and most videos, like you mentioned before, you want like some small conference and it was a very small chat and a lot of Twitch, for me is interacting with the person that I'm watching, through the chat. It's interesting to me that it'll be pre-recorded but the speakers are still going to be interacting through the chat, so it's going to be real cool to see. KRISTIAN: Yeah, I'm trying to -- ROBERT: I'm pretty excited about that. KRISTIAN: Yeah and I hope that you would be interested in being mixed. I'm sure people will have questions about that kind of stuff. I've already talked to a couple of speakers and I'm trying to reach out individually and see how many people can be there for that because it's really interesting. In your case, if there's enough people to say like, "This part kind of confused me," or, "You lost me here," that's an opportunity for you to refine the talk and get really explicit timed feedback. I think if someone came to you after, say your JSConf talk and was like, "You know, there's this part that I don't really understand," like you don't have the immediate understanding of literally, at what point in the talk are they exactly talking about. I think that will be really interesting. That's -- ROBERT: That's absolutely could be bigger. KRISTIAN: Yeah and I'm trying to figure out the best way to do this. If you've ever been in Twitch chat before, it can get a little rowdy and I'm trying to figure out the best way to manage that because I have literally zero tolerance for whatever kind of the most toxic of Twitch chat as I have zero tolerance for that in the conference. I'm trying to figure out the best way to make that happen. But if you're a speaker and especially, it's your first time ever giving a talk or something, if you get that kind of feedback, hopefully it's delivered in a way that doesn't suck and we're going to try and mediate that as best as we can. That's a great opportunity for really effective improvement on your presentation style and stuff like that, so I'm really excited about that. ROBERT: It's actually interesting to think about is what kind of trolls you might run into and -- KRISTIAN: And you have people who are like, "Vue is better..." ROBERT: Yeah or any kind of cross-trolling that might happen. That'd be interesting to see how that plays out and how you might enforce that code of conduct. KRISTIAN: We definitely do have a code of conduct in Discord and so far, I'm happy that we haven't had to enforce that in any way or there hasn't been anyone that has brought the quality of the chat down. I've seen people answering questions about different open source projects and stuff like that. I think, Robert you wrote up a solution to someone's problem in the TypeScript channel or something. Did I see that? ROBERT: Yeah. KRISTIAN: Yeah, stuff like that is really cool. ROBERT: Someone who was asking how to do radio buttons in React and I was like, "I'll just write a quick code chain box example that kind of showing this." KRISTIAN: Yeah and if I could pick one long term goal of where I want to see the conference in the community in a year or two, I want to be able to scale that up to, say like 10x or 100x the amount of people but still keep that quality of conversation. I think that is really looking at producing a conference. That part, honestly isn't the most complicated part. It's if you can use Adobe Premiere, you can pretty much make a pre-recorded conference work. It's keeping that quality and making people feel like they are a community, especially for people who know that they want to be a web developer, maybe they have no idea where to go or how to start. If people can join the ByteConf community and feel like this is a good place, that you can call this place home, I guess online and learn in that way. That's kind of the larger goal. The conference is just one aspect of getting there. WIL: This is all very exciting. I'm looking forward to attending. KRISTIAN: Yeah. I am really looking forward to it as well. It's pretty wild that it's August, that it's actually happening soon. I'm really excited. It's going to be sweet. ROBERT: Yeah and I'm seriously working on my talk right now, to try and get it together. The cool thing that I found about that, I'm talking about BigTest and Wil is a person that's writing BigTest and he's the mastermind behind it. It'd be great to have him in there and answering any questions alongside with me as the talk goes on. I didn't even consider it before you said it. It is really powerful because I'm going to be introducing something that might be foreign to a lot of people, this testing style and how you do it in single page apps. There will be a question and I know I won't be able to cover everything and hit all the bases and make sure that's not confusing because it is a complicated topic. I'm going to do my best but the added benefit of me being able to clarify things on the spot is kind of mind blowing there. KRISTIAN: It's huge and I'm trying to figure out the best way to archive that kind of dimension of the conference. I'm really interested to see it tomorrow. We're doing an 'Ask me anything,' but I'll plug that at the end. It's going to be an interesting to see what the kind of ratio, like signal-to-noise is in the chat and if it's good, especially at the conference itself, if people are asking really good questions and that kind of stuff and the speakers are responding, that is a really valuable thing to try and save. I'm trying to figure out how to do that as well, even save the most requested questions or maybe the most detailed answers that the speakers have and making that available in some way, I think it would be really valuable to people. WIL: Yeah, for sure. ROBERT: The other thing I just have some of thought of too, with all this being pre-recorded, you are able to schedule this out pretty well. At a normal conference, if somebody had a 45-minute slide and they finished in, say 30, the conference organizers will then have to go and figure out what they're going to do with that spare time but with all pre-recorded, you can just kind of spot it together and have a plan going forward. KRISTIAN: I think most of the talks, I've kind of ask people to keep them around 45, 50 minutes and we'll have some space between the talks for people to continue to ask questions in the chat or I can plug things like the Discord server in those spaces and sponsorship infos and stuff like that. But I'm also constantly thinking of these little formatic conference allows so many different little things to be tested. One thing we're thinking about doing is like at noon, there's going to be a break, kind of a lunch break, but ideally and I need to start thinking this out, getting some lightning talk style things from people who submitted a talk and didn't get accepted or something that and those are -- ROBERT: Would those be live? KRISTIAN: That's a good question. ROBERT: Or pre-recorded? KRISTIAN: That's a great question. I think the thing with live is that I would have to figure out how to get people to hop onto the stream. That might be possible but I'm not quite sure. I think we'll probably do pre-recorded, kind of across the board for this one but there's all of these little opportunities to do interesting things with the format. One thing that, I will take you on kind of a journey here like where my mind goes and I think about stuff like this over the last year or two. This is going to seem like such a tangent but I'll tie it up, I promise. Over the last year or two, actually longer, it's probably the last couple of years, I was really into Anthony Bourdain and all of his shows and I was really interested in, again this is going to sound really bizarre but I was interested in taking that idea and applying it to conferences. For say, the keynote speakers, I was thinking like it would be cool actually to go and meet them wherever they're working and stuff like that and introduce them in that format and maybe even sit down with them and do an interview or do some kind of live coding with them and have that available as a bonus material to the conference itself. Maybe air some of it in-between talks as part of the preface for their talk. There's all these kind of interesting things. I think that one thing that always kind of bothered me about the developer world is, I guess I always feel like it's really hard to visualize how to get started as a developer and then what is the day in the life of a developer and what do you actually do. I think I've been really interested in this idea of giving people a holistic view of how to get into this industry and to show people. At least in my opinion, there is a lot of hype and maybe, not intentional but it makes a scene a lot more difficult than it really is. That takes a lot of time but there are a lot of people who probably have been, whether that's kind of the Steve Job's worship of tech people or this other thing that no one can be like them unless you're whatever, if that makes sense. Basically, everyone in this industry is just a normal person. Maybe, there are some crazy personalities out there who are really dominating or stuff like that but for the most part, I think especially in the web developer world, everyone is, at least in my perspective, very welcoming and just like normal people and I want the aspect of the community to be letting people into that world and say like, "This is not as impenetrable as you may think," and there's a lot of different ways to -- ROBERT: Amplify the kindness and amplify the welcoming. KRISTIAN: Exactly, yeah. ROBERT: I like it. You did mention like around lunch time, there would be a break. At other conference, they usually cater lunch. Is there anything offered for that or is it like go on and find your own lunch? KRISTIAN: That's actually a really interesting question. No, there isn't anything planned but now, I wonder if I should find a company that's like... Is that DoorDash? Is that grocery delivery, is that restaurant delivery? You know what I'm talking about like -- ROBERT: Restaurant delivery. KRISTIAN: -- Or something like that. It'd be cool to have a coupon like if they're React, they might want to sponsor the conference. That would be interesting. That's a super -- WIL: -- Delivery fee. KRISTIAN: Yeah, that would be super cool. ROBERT: It might be too late for that now since we're a couple of weeks out but some of those companies do used React or in the future, for the future of ByteConf series, like if it's a SwiftConf and I know you've mentioned that before, you might be able to be like, "We're doing a Swift online conference. You guys use Swift. Do you want to sponsor?" KRISTIAN: Yeah. I think there are so many opportunities to do really cool things. That's a really cool idea. I haven't thought about that before. I'm going to write that down. That's a very cool idea. ROBERT: Could you tell I've been thinking about like a ByteConf accessibility conference? Because I have. KRISTIAN: Yeah. Let's do it. For real, that would be sweet. The format, we can tweak it in so many ways. It's like a full-day conference plan but there's definitely the opportunity to do really small form, like just an evening or something like that, where you get a couple of people together. The way that I visualize it in the future is there are these longer conferences but also, it just be really neat to do kind of continuous -- WIL: Online meetup essentially. KRISTIAN: Yeah, like broadcasting. I don't want to say like a TV channel but like this place that we're going to be airing new stuff to the people who are working on and we're going to be airing old talks from conference and stuff like that and giving people a space to constantly be learning. ROBERT: You can do like a nightly techcast. "Tonight, in JavaScript news, there are 15 new frameworks." KRISTIAN: Yeah. The thing is like with Twitch, they've done a lot of tools recently that I've become kind of aware of as I'm trying to figure out the best way to broadcast the conference. They have a lot of stuff around scheduling and stuff now that actually gives us the opportunity to basically run, maybe not nightly but weekly or monthly thing without having to explicitly setup... I don't know if either of you've ever done Twitch streaming but you have this broadcast software that you have to run on your computer and stuff like that. They're working on tools to remove that aspect of it and really just make it almost like a YouTube competitor in some ways and maybe like a more live aspect. That's stuff is really interesting to me because that totally fits in with the kind of aspect of what we want to do but there's all kinds of other opportunities too. I know there are a growing number of people who are doing live programming streams and it would be really cool to be able to share our audience -- ROBERT: Coordinate that? KRISTIAN: -- And stuff like that, so I'm trying to figure that out as well. ROBERT: Are you familiar with the Ember community at all? KRISTIAN: I was familiar with the Ember community a couple years ago. It's actually is what I learned before I learned React but I think I'm pretty out of date now. ROBERT: One of the team members here at Frontside, Taras, he started something similar like that two years ago called Global Ember Meetup and it was just an online meetup that would happen at night and people would come on and give their talks. It was actually really cool because there's a lot of engagement from all across the world, which was super neat. I would love to see that idea to continue live on. KRISTIAN: I know for our mailing list, we have a sense of where people are located and this is the nature to advertise and stuff because I think our most of our audience is still in the US, Canada, UK and stuff like that but there is growing numbers of places like Africa and South America and stuff like that, where I'm not as exposed to that community but I would to make it available to all of those people. I genuinely just haven't been exposed to those communities as much and I would both like to understand the unique problems of being a web developer in those areas and also, do my best to adapt the format of the conference and stuff to those groups. I imagine that people are really excited about it but I think after the conferences, really one of a lot of the interesting stuff happens because we can take a look back and say, what could we have done better to include all kinds of groups that are historically disenfranchised from attending this kind of stuff, if that makes sense. ROBERT: Even for me, I really want to go to conferences that are in Europe but that's a big investment. It's like breaking down those barriers. I'm pretty privileged in that regard but for somebody that isn't, even just attending a conference inside the States or somewhere that even kind of close for them, just the price of the conference ticket puts them out, so I'm really excited about this idea. Why not leverage the web and make everybody available to learn in conferences and have access to that community. KRISTIAN: Yeah. I think I actually saw that Facebook just announced. They're doing another React Conference and it was interesting speaking of ticket prices, I think a lot of you were saying it was super expensive. I don't know what the exact number was, maybe you know but I actually had some people tweet like, "This is why I'm excited for my ByteConf," and I was like, "What?" WIL: That's awesome. ROBERT: I don't know what their prices but when Facebook throws ReactConf, you have to enter into a lottery. You wouldn't even actually get a chance to buy a ticket. You have to enter a chance into winning a ticket for you to buy. KRISTIAN: Yeah and that kind of stuff, I mean that won't get too deep into my politics in general but generally, that's the kind of thing that I am extremely allergic to. Even the idea of having a lottery and stuff like that, there's a lot of people who, to make the decision and say they have the opportunity to attend the conference, like if they say they get a lottery email like you have a ticket, there are some people who will be able to swing that on the spot and say, "I want to buy a ticket and start to book my flights and stuff or whatever," but there's a lot of people who that's going to be a thing they need to plan for a really long time. They don't have the opportunity to wait on the email and say, "Yes, I can go to this to what I'm being paid." That's just a different dimension of financial and I think the ticket was like $600 or something, maybe $700. It was expensive but there are much more expensive conferences. Especially, if you don't work at a company that covers your conference costs, like I am fortunate to the both places I've been at for a longer period of time like say, two plus years, have both sponsored conferences, they allowed any of their employees to go to conferences with some budget in the thousands of dollars every year and for someone to pay that, say they want to get into web development, that's a huge financial burden if you're working minimum wage or something like that. I feel like I sounds I just came down very hard on the React Conference but it's fine. It's cool that they're going to get really cool speakers and stuff like that but I think it's something. ROBERT: It's the job position of online-only versus co-located, right? There's talk there. KRISTIAN: Yeah and we talked earlier, maybe there's a hybrid approach of doing ByteConf physically, I think the one thing I will never compromise on in terms of how we put on the conference is like if we're going to do a physical thing, it needs to still be available for people who can't attend it. I think even at this point, the first conference hasn't quite happened yet but I do strongly believe that's already in the DNA of the idea and kind of ideals of the conferences I want to allow people to always attend, whatever we're doing, regardless of their situation. WIL: That's huge. I never attended a conference until last year when the company I'm currently working for, Frontside, paid for it. Before this, I had never been to a conference. It's awesome to see, they're like free [inaudible] by now. KRISTIAN: The conference I talked about earlier, the San Francisco one, I just straight up put that on a credit card, like I could not afford it. I did it because I guess I felt like -- ROBERT: That thing -- KRISTIAN: Yeah, exactly but there are people who just straight up can't do that. By that point, I was interning at a web development place but I still was basically getting paid like minimum wage. It was like under paid but I did it because I felt like it would be an investment. I didn't actually get a job from any one of that conference or anything like that, so who can say what the actual value of that was but it was important kind of in a motivational way but I don't ever want people to go into debt to go to ByteConf. That sucks. There's no way I'll allows them to do that. ROBERT: Yeah, because it's not only the conference ticket. Depending on what conference you're going to, I've seen as low as $150 and as high as $2000, just for the conference tickets and then you have to get your hotel for a week and fly out there and food. It quickly turns into a really expensive endeavor. KRISTIAN: It is in a lot of ways. I think for people who are fortunate in tech, it's somewhat of a vacation because you get to go somewhere. Usually, the tech conferences, I think are held in pretty cool locations, unless it's some kind of indie conf that doesn't have a lot of sponsorships or something like that. I went to a conference a couple of years ago that was at Disney World and it was very much a vacation. I went to the conference and I had a lot of fun. It was an Elixir Conference. I learned a lot of stuff there but after the conference was done, I went to like... I'm trying to think what it is called. It's like Downtown Disney, basically or whatever, so I went like -- ROBERT: Oh, they renamed it to Disney Springs. KRISTIAN: Oh, really? Disney Springs, wow. That sounds very -- ROBERT: Yeah, I [inaudible] for two years. KRISTIAN: Actually that does sound right. Coming from LA, I used to go Disneyland all the time. Even if the conference is just on a hotel or whatever, usually the area around it is pretty nice but that definitely limits a lot of people, unless you're fortunate enough to be making a tech salary or have a company that will cover that conference budget for you. ROBERT: We're sending two people to JSConf Hawaii. We were able to snag the early bird tickets which are so much cheaper. Then I was shocked that the hotel cost on Waikiki Beach was cheaper than my Portland hotel, so I'm actually super jealous and it was a super awesome vacation on the beach in Hawaii for less than what probably took for me to get to Portland. KRISTIAN: Is that where JSConf is? It's just in Portland? ROBERT: That's JSConf Hawaii. Portland was Chain React, so shout out to React Native Conference. The JSConf US one is in San Diego which is coming up in two weeks. Oh, my God. KRISTIAN: Nice. If you are a conference speaker and stuff, I think you get some stuff cover. I don't know. Every conference is different or whatever, so if you go in that format, if you go to conferences as a speaker, I think it's a little bit different situation but I can think of a lot of times that I looked at a conference and there's been a couple of talks that I found interesting but just the amount of money that I would spend to see one or two talks that really interested me, it wasn't worth it. ROBERT: At least ByteConf kind of shed that and absolutely drops the barrier of entry of to nothing. I mean, nothing mean you have to have an internet connection. KRISTIAN: Yeah but there's still a couple of things. This is why I'm trying to deal the rebroadcasting and making it available after the fact is there are some people who still can't take a day off and watch a full seven or eight-hour conference, so it's important to make it available after the fact too. I think I mentioned, I want to sell the conference talks with the slides and with the bonus materials and stuff after the fact. There's people that are actual, like practicing React developers who would feel fine paying like $30 for those or something and that way, we can hopefully, ideally, I hope I'm not totally speaking out of this to make totally go wrong but ideally, pay the speakers to some degree. That's another kind of aspect of it that I eventually would to do well in the future. But like you said, lowering the barrier to entry to literally as close to zero as we can get is what's really important to me. Then they feel everything else, we can work back up to something, putting on the really big conference events that a lot of other people are doing but still keep those ideals that we had from the first place. ROBERT: I love it. ByteConf sounds super awesome. I'm very excited to be selected to be a part of it. I really appreciate that. Is there anything else that you want to plug about ByteConf? KRISTIAN: Yeah. A couple of things, tomorrow depending on when this comes out, August 10th at 5 PM PST, we have our first 'Ask me anything' with Kyle Shevlin, who is a speaker at ByteConf React this year. It's just going to be Twitch.tv/ByteConf. If you're on the mailing list or you're in the Discord server or stuff like that, you probably already know about this but I will obviously tweet about it as well. A couple of other things. The 24th of August, we're actually doing and this hasn't been announced yet. This is the first time I'm talking about it. ROBERT: You heard it here first. KRISTIAN: Yay! We got an 'Ask me anything' with Kentcdodds, one of our keynote speakers. I'm very excited about that. That hasn't been announced yet but I imagine that's going to be really cool. I think people are going to be very into that. Finally of course, the conference itself. ByteConf React is August 31st. It's one day, starts at 9 AM PST. You should join the mailing list and follow us on Twitter. It's just at @ByteConf. You'll see a link to the mailing list there as well and you'll get some more information there but it starts at 9 AM. On Twitch, it's Twitch.tv/ByteConf. That's all you need to do to attend. I would love for people to follow us on Twitter and join the mailing list but if you are allergic to following the people on Twitter or getting emails, you don't have to do any of that. You can just find us that day on Twitch. We have some more things that we're probably going to announce as kind of preconference events in between now and then but those are kind of the two or I guess three, main things. Thank you for having me on. It's been really awesome. I think it's maybe the first time I've talked about the bigger picture stuff with the conference so it's been really cool to get to talk about that. I'm excited for your talk as well. I think it's going to be really neat. ROBERT: Awesome. Thank you for coming on. Like I said, I'm really excited for ByteConf. When I saw this pop up as an idea, I was all over it. I think I actually submitted the CFP before you officially announced that there was CFP. I'm like, "I'm in it. I'm going for it." KRISTIAN: One more thing, I think I didn't mention just kind of organically is that all of the CFP submissions are actually reviewed by people in the community. I'm really proud to say that the talks they have selected, including Robert's were generally, because people were just super interested in them. I think that's going to really show when we air the conference. People are going to be really excited about this stuff. It's going to be super cool. I'm beyond hyped. I'm extremely nervous, extremely hyped and it's going to be great. WIL: I'll also going to say that if you have an Amazon Prime account, you get a free Twitch subscription, so you can go ahead and subscribe to ByteConf on Twitch. KRISTIAN: Yes. That is very true. I should do a better job of plugging that. Oh, one more thing. I guess I should be a good podcast guest and also say like, if you want to follow me on Twitter, my name is Kristian Freeman, it's at @imkmf on Twitter. For the most part, I just tweet about ByteConf stuff and Product Hunt stuff and then get mad about politics sometimes but I should do a better job of plugging my stuff. Again, thank you for having me on this. This has been really, really great and I'm looking forward to seeing you both at the conference. ROBERT: Cool. Thank you Kristian. This is a great conversation. I'm really excited about it. We are the Frontside. We build software that you can stake your future on. If your team needs any help with single page app testing, accessibility especially in single page apps, I'm really, really open to helping anybody. If you or your team need help in that or leveling up, be sure to reach out. We're open to pair. We're open to start a new engagement, anything that kind of helps you and your team to move forward, we're super interested in. As always, you can reach out to us Info@Frontside.io for any feedback on the podcast and thank you Mandy for producing our podcast. Thanks everyone. Have a good day. WIL: Yup. Thanks guys. See you at ByteConf.
Matteo is a code pirate and mad scientist. He spends most of his days programming in Node.js, but in the past he worked with Ruby, Java and Objective-C. In 2014, he defended his Ph.D. thesis titled “Application Platforms for the Internet of Things”. Now he is a Principal Architect at nearForm, where he consults for the top brands of the world. Matteo is also the author of the Node.js MQTT Broker, Mosca, the fast logger Pino and of the Fastify web framework. Matteo is a member of the Node.js Technical Steering Committee. Matteo spoke at several international conferences: Node.js Interactive, NodeConf.eu, NodeSummit, JSConf.Asia, WebRebels, and JsDay to name a few. He is also co-author of the book “Node.js Cookbook, Third Edition” edited by Packt. In the summer he loves sailing the Sirocco.
Recently, there was an issue with eslint-scope that gave the JavaScript community a good scare. I wrote about it one day after it happened os feel free to go and read the article here: https://oprea.rocks/blog/fix-eslint-scope-backdoor The gist was that some malicious third party was exfiltrating NPM auth tokens that it would probably later use to infect more packages in a ripple-like manner. What's even funnier is that while I was listening to Ryan Dahl's 2018 JSConf presentation, I heard him complain about a similar hypothetical situation with ESLint, namely, that it could take over your computer, due to Node's non-restrictive model with filesystem and network access. It's the first episode I've recorded in a while and I'd be happy if you would listen to it and give me some feedback. I'm going to publish a new episode each Tuesday so stay tuned.
The other day I got to watch a few talks from JSConf Asia 2018 on Youtube. There are 39 of them in the playlist, so I picked a random one. And I got so lucky I just had to make this episode about it! The talk was "In the Loop" by Jake Archibald. Jake is developer advocate for Google Chrome. He's one of the editors of the service worker spec, so he's into offline-first, push messaging and web performance. - https://www.youtube.com/playlist?list=PL37ZVnwpeshFqN5dcZ704lxI3F5iHDYkl - JSConf.Asia 2018 - https://youtu.be/cCOL7MC4Pl0 - Jake Archibald: In The Loop - https://youtu.be/rLgBqT_e6Yo - Feross Aboukhadijeh: JavaScript Pranks 5 minutes of React - podcast about React hot topics and JavaScript ecosystem. https://5minreact.audio
Introduction [0:42] Hackware Edgis-Security Cybersecurity Awareness Alliance Div0 Cybersecurity awareness [4:44] SQL Injection Access Control Cryptography Penetration Testing Emil’s Twitter Coursera Udemy edX Khan Academy Coursera Cryptography Course Applied Cryptography National Cybersecurity Strategy Personal Data Protection General Data Protection Regulation - GDPR PDPC Guidelines Responsible Disclosure Bug Bounties SingCert Rapid Fire [40:00] Hearthstone Exploding Kittens The Oatmeal Packet Squirrel Battlestar Galactica Div0 Python Defcon Picks [44:15] Keybase.io PGP MIT PGP Server resin.io Security Now Telegram Bots xkcd - Python Div0 November 2017 Meetup We Build SG Event Loop - Local events [49:28] Geekcamp.sg JSConf.asia Div0 November 2017 Meetup Infosec in the City Joe Fitz Joe Fitz on the Amp Hour Infosec in the City - tickets Electric Plug – Connect with Emil [55:13] Emil’s Twitter
Live from JSConf.EU, we speak with Nadieh Bremer & Shirley Wu about their incredible data sketches project and their experiences with data visualization.
Introduction [0:30] HTT2 less HTTP2 [3:13] HTTP HTTP 1.1 Virtual Hosting Upgrade Header Deprecating the “X-“ Prefix TLS Compression HPack HTTP2 Server Push HTTP2 Inlining/Streams HTTP2 Encryption Let’s Encrypt Browser GeoLocation API nginx http2 http2 in nodejs nodejs http2 package CDN cloudflare http2 on cloudflare http2 push on cloudflare LFN bandwidth-delay product teaching Web development [23:31] Applied Cognitive Science General Assembly Always bet on JS I/O Polling audience questions [33:57] Cordova HTA Rapid Fire questions [39:37] Visual Studio Code Elastic Tabs Tabs vs Spaces Starcraft 2 Hexo Picks [43:10] Saleae Logic Analyser Go Applied Cognitive Science Docker for Mac Civilization VI Eggs as food Virtual Reality Oculus Rift HTC Vive Event Loop - Local events [49:05] JSConf.Asia CSSConf.Asia DevFest.Asia JSFoo SingaporeJS kopijs SingaporeJS Book Club Hackware Breadboarders Electric Plug – Connect with Sebastiaan [52:09] Sebastiaan’s Facebook Sebastiaan’s Twitter Sebastiaan’s Github Sebastiaan’s Gitlab
Laura, Dan and James talking internet, computing and technology on the panel this week. Ben Schwarz & Karolina Szczur - organisers of CSSConf and JSConf come in to talk about the hard work involved in designing conferences for diversity. Professor Julian Thomas from the Swinburne institute of social research calls in to explain and discuss the 2016 Digital Inclusion Index.
Episode 128: George Hudson is a former United States Air Force sergeant turned software programmer. The military taught George leadership, organizational skills, and the importance of continuous professional training. He made the switch to computer programming to spend more time with his family and open the door for more opportunity. George launched Kids Who Code at the Turing School of Software and Design in 2015. - Kids that code - Teach for America Veterans - Scratch language my MIT to teach code - Ruby Language - We teach Agile Courses to produce the MVP - The waterfall approach https://www.turing.io/ Check out these free resources to get started coding: https://www.codecademy.com/ https://scratch.mit.edu/ http://appinventor.mit.edu/explore/ Being a good software developer does not prepare you to teach development. The Turing staff blends computer programming experience with years of classroom instruction. No other team can match our depth of expertise and on-the-ground instructional experience. OUR TEAM Is skilled in education pedagogy with over 30 years of aggregate classroom experience. Builds on lessons learned from creating both Hungry Academy and gSchool. Trains professional development teams at top technology companies like LivingSocial, Boeing, Accenture, and Sony Playstation. Contributes to the community, presenting at and helping organize RubyConf, RailsConf, JSConf and dozens of smaller conferences. Is committed to making our program inviting and accessible to a broad range of people, regardless of academic background, professional background, age, race, gender, gender identification or sexual orientation. The Veteran On the Move podcast has published over 100 episodes giving listeners the opportunity to hear in-depth interviews conducted by host Joe Crane featuring the people, programs and resources to assist veterans in their transition to entrepreneurship: Marine Corps, Army, Navy, Air Force and Coast Guard veterans, DOD, entrepreneurship, business, success, military spouse, transition, education, programs and resources. Veteran On the Move has garnered over 500,000 listens verified through Stitcher Radio, Sound Cloud, Itunes and RSS Feed Syndication making it one of the most popular Military Entrepreneur Shows on the Internet Today.
Raquel is still playing Pokémon Go. npm camp happened. KarlsruheJS happened. npm's WD-40 tools week happened. Kahlil likes create-react-app. Nodebots Day happened. Rockbot will be speaking at various conferences. Stackoverflow Documentation is a thing. Kahlil is involved in music project that is being released this month. Rockbot read a book about people management. There is new Node drama.
Kahlil gave a talk on Observables. How do you keep up with technology? Twitter lays off a large number of employees. Twitter is for old people. Project management and software estimating is hard. The state of npm Orgs. Photoshop is dead and why Kahlil is going to keep his latest twitter handle for all times.
The Internet is mad. iPhone silliness. Sadly DailyJS and JSConf US are coming to an end. Raquel will be at Strange Loop next week. Kahlil got a PR merged into Gulp. Workflow stuff. npm orgs, search, shrinkwrap and more. Cilantro tastes like soap/awesome.
Долгожданный выпуск. Побили рекорд по времени подкаста. Пообщались с Василикой про ее работу и опыт выступления на MoscowJS, опыт в политике и его связь с веб-разработкой, зарплаты российских разработчиков и возможность переезда за границу. Обсудили интересные доклады с последних конференций JSConf в Будапеште и FrontendConf в Москве. Было много холиваров на тему Twitter'а, английского языка, методологий разработки и многого другого. Разумеется, не прошли мимо последних громких новостей - объединения io.js и Node.js и возможного объединения Underscore.js и lodash. По традиции рассказали много пиков, которые обязательно вас заинтересуют. Все как вы любите!
It can be overwhelming and, in some cases, downright scary to speak at events for many developers. Aaron Frost, co-organizer of ng-conf & Google Developer Expert, (@js_dev) talks with us about his experiences, mistakes, and triumphs while speaking at developer events as well as organizing them. Resources JavaScript Jabber 124 : The Origin of JavaScript with Brendan Eich - http://devchat.tv/js-jabber/124-jsj-the-origin-of-javascript-with-brendan-eich JavaScript Jabber 105 : JsConf and Organizing Conferences with Chris Williams - http://devchat.tv/js-jabber/105-jsj-jsconf-and-organizing-conferences-with-chris-williams JavaScript Jabber 131 : Conferences & Meetups with Dave Nugent - http://devchat.tv/js-jabber/131-jsj-conferences-meetups-with-dave-nugent Writing proposals for speaking at conferences - http://weareallaweso.me/for_speakers/how-to-write-a-compelling-proposal.html One reason Raquel Velez rocks - https://twitter.com/rockbot/status/555163826400661505 Adventures in Angular 002 : Angular Meetups with Matt Zabriskie and Sharon Diorio - http://devchat.tv/adventures-in-angular/angular-meetups-with-matt-zabriskie-and-sharon-diorio Conference Organiser's Handbook - http://www.quirksmode.org/coh/ Loop Conf - https://loopconf.io/ Ng-Conf - http://www.ng-conf.org/ React Rally - http://www.reactrally.com/ JS Remote Conf - https://jsremoteconf.com/ Ruby Remote Conf - https://rubyremoteconf.com/ Meetup.com - http://www.meetup.com/ Call For Proposals on Lanyard - http://lanyrd.com/calls/ Panelists Danny Blue - Front End Engineer at Deloitte Digital Erik Isaksen - HTML5 Google Developer Expert & Front End Engineer at Deloitte Digital
Introduction [0:46] HackerspaceSG NUS Hackers What have you built recently [3:20] JSConf NodeBoats Courselooper makey makey bare conductive circuit sticker Starting young in tech [5:43] FrontPage NUS High TWiT.TV Security Now iOS Jailbreaking Automator Applescript bash friendshipr Eigenvector Centrality PHP PHP User Group Chalkboard UC Berkeley CS61 Class NUS CS3216 Getting involved in student group [25:40] NUS Hackers #iphonedev Friday Hacks hackerschool git bunnie huang Novena Laptop I/O Polling audience questions [35:07] Twitter Fabric Core Intuition XCode Rapid Fire questions [41:08] TextMate C Programming Language Centos Standing Desk Picks [44:25] SuperIntelligence Grove Sensors Fitbit One Hardware at NUS Friday Hack Audio Signal Processing for Music Applications tweeq from Mopus Works Michelle’s talk at Geekcamp Computer Architecture on Coursera Event Loop - Local events [52:25] JSConf.Asia HackerspaceSG 5th Birthday NUS Hackers Friday Hacks NUS Hackers Code@NUS Electric Plug – Connect with Vishnu [53:42] Vishnu’s Twitter
Kevin Old and Jeff continue discussing the uniqueness of JSConf 2014 and highlight some of their favorite talks
Kevin Old and Jeff discuss the uniqueness of JSConf 2014 and highlight some of their favorite talks
Jeff interviews Kassandra Perch, an engineering evangelist at RetailMeNot and an instructor for Girl Develop It!, to discuss modular JS architectures and lessons learned from teaching JavaScript
Jeff interviews Nico Bevacqua, a full stack developer from Buenos Aires, to discuss the process of building web apps efficiently and effectively, discussing tools and techniques.
Jeff interviews Spike Brehm, a web engineer at Airbnb, to discuss building web apps which share code, templates, business logic, and the tools which help enable this today.
Guy Bedford explains jspm and SystemJS which he created to simplify JS loading and package management. Load CommonJS, AMD, and ES6 modules in a simple and unified manner based on the ES6 Module Loader polyfill.
Forrest Norvell discusses ES6, the standards process, and his ideas on how the community can get started now to shape the language and adoption of ES6.
Daniel Shaw (@dshaw) explains the genesis of his new company, NodeSource, which was launched during JSConf 2014, Amelia Island, FL
DevNews 87 proves that we'll be back, even if we have to leave a resort to do so. Ken and Joel bring you the news in open source development this week, including Cordova being embedded into Visual Studio 2013, Google and Apple settling their patent row for now, Google Fiber not charging for peering services, Internet Explorer roadmap revealed, and much, much more. The post DevNews #87 – JSConf 2014 recap, TrueCrypt bites the dust, Renderman Open Source appeared first on Chariot Solutions.
The panelists discuss JSConf and conference organization with Chris Williams.
The panelists discuss JSConf and conference organization with Chris Williams.
The panelists discuss JSConf and conference organization with Chris Williams.
Introduction Agile Software Development NEO Pivotal Labs Agile development Software testing Iteration planning Retrospective meeting Test driven development Pivotal tracker User stories RSpec Capybara RSpec book DSL Refactoring Red-Green-Refactor Selenium Model-View-Controller Happy Path Assert Pair Programming Ping-Pong pairing Challenging response I/O Polling audience questions SCRUM Standups Show and Tell Hyper media rest API 2 pizza a team Rapid Fire questions Vim Ruby Bash Ubuntu Rubyfive Functional programming FPS Elixir Doubly Linked list - New releases Mathematica and wolfram language free on raspberrypi Wolfram Alpha Event Loop - Local events JSconf.Asia Special mentions Carl Coryell Martin Tim Oxley Winston Teo Electric Plug – Connect with Wei! Twitter Github Singapore JS meetup Singapore JS Facebook Functional javascript workshop Ruby meetup Multi signature transaction with bitcoin Cryptocurrency
JSConf AU OAuth Mozilla Persona Javascript Macros WAT vs WTFJS Don't let Webkit become IE6 I18N GNU GetText IBM ICU4J REST vs Message Bus's US patent chief to software patent critics: "Give it a rest already" Google Ingress Countries / Phones IP over DNS Gosu JVM Language Types vs Tests
Update: Our first posting of this episode had a glitch in it around 14:50. It should be fixed now. If you already have the episode, you should re-download it. Our fourth episode is all ready for your listening pleasure. In this exciting episode we focus on “The Conference Experience” and discuss why programming conferences are so important to developers. Chris talks about why CodeMash was so awesome and the awesome talks full of awesomeness that he attended. Ed talks about his own experiences with speaking and attending conferences, complete with a total derail by Chris on why a certain conference rubbed him the wrong way. Oh yeah, you also find out our opinions on what constitutes a “well-written PHP application”. I’m sure you will be surprised by our answers. As always, we welcome your feedback. You can always hit us up on Twitter where we love to read what you say and promptly ignore it or privately mock it. Download now (MP3, 51MB, 1:20:18) Links Capistrano Phing Whiskey Disk CodeMash JSConf OSCON Brooklyn Beta
JSConf is like, the biggest deal in conferences, and yayQuery is like, the biggest deal in podcasts, so it was only natural that the spectacular lunch on day one of JSConf 2010 was the yayQuery Lunch Spectacular. Relive the magic, relive the hijinks, and come on down to the world's only JavaScript gameshow that is also a drinking game!
JSConf is like, the biggest deal in conferences, and yayQuery is like, the biggest deal in podcasts, so it was only natural that the spectacular lunch on day one of JSConf 2010 was the yayQuery Lunch Spectacular. Relive the magic, relive the hijinks, and come on down to the world's only JavaScript gameshow that is also a drinking game!
After back-to-back weekends on opposite ends of the country, the yayQueriers recount their adventures fulfilling Manifest Destiny. The team trekked from JSConf.US in D.C. to the Bay Area jQuery Conference in Mountain View on what was more a trail of beers than a trail of tears. With their wagons full of knowledge, they've decamped to share their provisions with you! So if you missed either one of these conferences, get your listenin' ears on! Plus: A special cameo by the Unicorn of Technical Difficulties.
After back-to-back weekends on opposite ends of the country, the yayQueriers recount their adventures fulfilling Manifest Destiny. The team trekked from JSConf.US in D.C. to the Bay Area jQuery Conference in Mountain View on what was more a trail of beers than a trail of tears. With their wagons full of knowledge, they've decamped to share their provisions with you! So if you missed either one of these conferences, get your listenin' ears on! Plus: A special cameo by the Unicorn of Technical Difficulties.