POPULARITY
In this supper club episode of Syntax, Wes and Scott talk with Andrew Lisowski about working on Descript, web streams vs local storage, using state machines, writing CSS with Radix, monorepos, and more. Show Notes 00:35 Welcome 01:07 What is Descript? Descript | All-in-one video & podcast editing, easy as a doc. Work — Sandwich 02:21 Who is Andrew Lisowski? Andrew Lisowski (@HipsterSmoothie) / X hipstersmoothie.com Descript (@DescriptApp) / X devtools.fm 04:51 How does Descript interact with the webcam? 08:52 Web streams vs local first Web Streams Explained — Syntax Podcast 587 10:06 How are you exporting video? GitHub - Yahweasel/libav.js: This is a compilation of the libraries associated with handling audio and video in ffmpeg—libavformat, libavcodec, libavfilter, libavutil, libswresample, and libswscale—for emscripten, and thus the web. Riverside.fm - Record Podcasts And Videos From Anywhere 14:40 How does Descript deal with recording fails? 17:17 How does Descript design and build the UI? 19:37 What did you like about state machines? XState - JavaScript State Machines and Statecharts 24:12 How are you writing your CSS with Radix? Themes – Radix UI Home | Open UI 30:30 How does the marketing site's tech stack compare? 31:44 Playwright vs Cypress Fast and reliable end-to-end testing for modern web apps | Playwright JavaScript Component Testing and E2E Testing Framework | Cypress 36:26 What tech do you use for monorepos? 37:01 What's your build tool? Workspaces | Yarn - Package Manager Turbo webpack 40:18 Moving to the web means moving things to the backend 41:37 Descript focuses AI tools on helping creators Eye Contact: AI Video Effect | Descript 50:50 Supper Club questions Topre Switch Mechanical Keyboards REALFORCE | Premium Keyboard, PBT, Capacitive Key Switch Iosevka Github Dark High Contrast - Visual Studio Marketplace 56:21 SIIIIICK ××× PIIIICKS ××× ××× SIIIIICK ××× PIIIICKS ××× Lexical shadcn/ui Shameless Plugs devtools.fm Tweet us your tasty treats Scott's Instagram LevelUpTutorials Instagram Wes' Instagram Wes' Twitter Wes' Facebook Scott's Twitter Make sure to include @SyntaxFM in your tweets Wes Bos on Bluesky Scott on Bluesky Syntax on Bluesky
Today's guest is with Devtooligan - a pseudonymous smart contract engineer and auditor. Devtooligan is a mainstay in the Huff community and just recently landed a job as a security engineer at Trail of Bits. In this episode we went deep into Huff & why so many Huffoors have had lots of success. We also discussed Devtooligan's career path and his journey leveling up with smart contract security.00:00 Intro3:33 How devtooligan got into crypto6:48 Working at Yield Protocol, Ethernaut, Getting into Huff, 12:30 Why learn Huff?16:35 What has Solidity done well?20:02 What should the Huff community work on?23:00 Why have Huffors had success?27:40 Getting better with smart contract security37:55 What does Devtooligan's audit process look like?43:53 What can smart contract devs be better at? (Documentation)48:31 AI tooling & auditing51:45 Tinkering is what drives innovationUseful Links:-Devtooligan on Twitter: https://twitter.com/devtooligan-Security reference, exercises, and tips: http://secure-contracts.com-Huff main site: www.huff.sh-Statecharts and state machines: https://stately.ai/docs/state-machines-and-statecharts-ToB Youtube channel: https://www.youtube.com/@trailofbits-Fuzzing workshop: https://www.youtube.com/watch?v=QofNQxW_K08&list=PLciHOL_J7Iwqdja9UH4ZzE8dP1IxtsBXI-How to prepare for an audit: https://blog.trailofbits.com/2018/04/06/how-to-prepare-for-a-security-audit/
Lindsay and Steve talk with Maya Shavin about XState, a library for building finite state machines. We talk about what XState is, how it compares to global state management tools like Vuex, and how to integrates it with Vue. We also discuss XState's visualizer, which helps developers see how their state machines work. Panel Lindsay Wardell Steve Edwards Guest Maya Shavin Sponsors Dev Influencers Accelerator Links VoV 113: CSS and Components with Maya Shavin | Devchat.tv Image and Video Upload, Storage, Optimization and CDN Maya Shavin - Web developer | Speaker | Blogger | Organizer | Bookworm XState - JavaScript State Machines and Statecharts GitHub | davidkpiano/xstate Usage with Vue | XState Docs GitHub | mayashavin/vue3-xstate-demo XState Visualizer Twitter: David K. ( @DavidKPiano ) Damian Dulisz on Twitter Twitter: Maya Shavin ( @MayaShavin ) Picks Lindsay- The Initial Preview of GUI app support is now available for the Windows Subsystem for Linux Maya- Mac - Apple Steve - Why You’re Christian - David Perell Steve- Daniel 5 NIV - The Writing on the Wall Steve- Leviticus 16:6-10 NIV - "Aaron is to offer the bull for his own sin" Contact Lindsay Twitter: Lindsay Wardell ( @lindsaykwardell ) Contact Steve Twitter: Steve Edwards ( @wonder95 )
Lindsay and Steve talk with Maya Shavin about XState, a library for building finite state machines. We talk about what XState is, how it compares to global state management tools like Vuex, and how to integrates it with Vue. We also discuss XState's visualizer, which helps developers see how their state machines work. Panel Lindsay Wardell Steve Edwards Guest Maya Shavin Sponsors Dev Influencers Accelerator Links VoV 113: CSS and Components with Maya Shavin | Devchat.tv Image and Video Upload, Storage, Optimization and CDN Maya Shavin - Web developer | Speaker | Blogger | Organizer | Bookworm XState - JavaScript State Machines and Statecharts GitHub | davidkpiano/xstate Usage with Vue | XState Docs GitHub | mayashavin/vue3-xstate-demo XState Visualizer Twitter: David K. ( @DavidKPiano ) Damian Dulisz on Twitter Twitter: Maya Shavin ( @MayaShavin ) Picks Lindsay- The Initial Preview of GUI app support is now available for the Windows Subsystem for Linux Maya- Mac - Apple Steve - Why You’re Christian - David Perell Steve- Daniel 5 NIV - The Writing on the Wall Steve- Leviticus 16:6-10 NIV - "Aaron is to offer the bull for his own sin" Contact Lindsay Twitter: Lindsay Wardell ( @lindsaykwardell ) Contact Steve Twitter: Steve Edwards ( @wonder95 )
David Khourshid, the creator of XState, a pianist, and a software developer, joins Ari Koponen on the Frontend Greatness podcast to talk about "From Redux to XState." In this episode: - Which parts of Redux you can replace with XState? - Can/should you manage all your state with state machines? - How to persuade your colleagues to use state machines? --- Episode Notes Social - David's Twitter: https://twitter.com/DavidKPiano - Ari's Twitter: https://twitter.com/apkoponen Show Notes - XState: https://xstate.js.org/ - XState Visualizer: https://xstate.js.org/viz/ - XState Catalogue: https://xstate-catalogue.com - "Video with Rainbow colored shirts": https://youtu.be/7erJ1DV_Tlo - Emmet: https://emmet.io/ David's Recommendations - Statecharts.dev: https://statecharts.dev/ - Matt Pocock: https://twitter.com/mpocock1 - XState Discord: https://discord.gg/xstate - Keyframers Youtube: https://youtube.com/keyframers - Constructing the User Interface with Statecharts: https://www.goodreads.com/book/show/4589003
Sponsored By: Show Notes [00:01:28] David explains about XState and the concept of State machines. [00:02:42] In a lot of his talks, David references a paper from 1987, so Tessa wonders how David got into State machines and Statecharts. [00:06:01] Sarah ask David how does it feel to be at the root of this pattern rediscovery in the front-end world and how do you feel about seeing those tried and true patterns slowly emerging front end? [00:08:44] Ari asks David to give an example of a common scenario that we probably have all dealt with where a state machine might be better than Boolean state management? [00:14:12] Tessa wonders how does David recommend somebody goes from, I don’t know what a state machine is to oh, here’s how I can start using them today? [00:14:28] Sarah mentions about David having a visualizer on the XState website. She wonders if he’s considered pushing it into something that could maybe be a tool and has he considered building something like that to help with collaborative work? [00:16:44] David talks about testing, especially end to end testing, and how tedious it is. [00:18:33] Tessa is curious if David ever tries to represent piano playing with state machine? Piano was his major in college! [00:21:50] Sarah wonders what were David’s big turning points, the big realizations that he made as a library author, since he’s at the fourth major version in three years of XState now. She also asks him when he decided to port XState to Vue, did he encounter major challenges or different challenges that were imported into react? [00:29:35] Ari talks about having to address this past week, an ongoing problem caused by use of a Boolean state. Sarah asks David what are some of the most creative applications that he’s seen of XState? [00:33:30] Tessa is curious to hear more about how the state machines work with scoping of events? [00:36:55] David talks about moving from Vuex to XState. [00:42:46} David explains why he would like to see more examples of people using state machines in creative ways. [00:45:27] Tessa wonders if David has any thoughts or has he seen any interesting examples on state machines, potentially opening up a lot more interesting avenues to create dynamic or intuitive or accessible user interfaces? Picks of the week: [00:49:10] Tessa’s pick is a game, “Phoenix Wright: Ace Attorney- Dual Destinies.” (3DS, IOS, Android) [00:50:16] Sarah has two picks: “Ten Second Songs” on YouTube and a book called, “So You Want to Talk About Race,” by Ijeoma Oluo. [00:51:39] Ari has three picks: she seconds Sarah’s “Ten Second Songs” pick. Also, a song called, Disintegration Anxiety,” by Explosions in the Sky, and a Netflix show called, “Dead to Me.” [00:52:42] David has two picks: A tutorial by Sarah Dayan called, “Using State Machines in Vue.js with XState.” Also, midi.city which is an online synthesizer. [00:53:33] Ben’s pick is a gaming laptop Acer Predator Triton 500. Sponsor: Linode (https://promo.linode.com/vue/) Resources mentioned: David Khourshid Twitter (https://twitter.com/DavidKPiano?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor) David Khourshid GitHub (https://github.com/davidkpiano) David Khourshid-CodePen (https://codepen.io/davidkpiano?__cf_chl_jschl_tk__=d9660a1d62fa6c2e32de33fec46b5bf44ae50acb-1590537654-0-ARZfgByyedKwLNEHq3PjUtIiIYzTDmxdd2ofmN0GHO721VSK5VQxixvVB9Sk_Q4I3q8x8q6ri5U7PrInGcs9t23afSy1o2YLl2vdPEl4ARL6Y5ZFn3sW0RNORy0HqvCUpFK1tW13S-sNsjub0CCJ9yeqU5GbFbkxJtr84mQh-KdiH2Y_MJvF_yfN7BYCAqwGsUtYYU3JouXE87J_cSqlE7XENp3xg6qvYCtGZl24rDzN1QxxQV0J0NJNcHJAJIk3Nyykpg3tF0NBzqEwH7Krs74prQyZNaEwfQwewIisplrl49Be4if6MX5YZxRm1DKYBO5Lhdai9CwUGipePSE29gC4CuIwpS1m8kIuf4DI0SA_) Enjoy the Vue-Episode 11, Test Driven Development (feat. Sarah Dayan) (https://enjoythevue.io/episodes/11) Erik Mogensen (https://github.com/mogsie) Statecharts (https://statecharts.github.io/) State Chart XML (SCXML) W3 Spec (https://www.w3.org/TR/scxml/) Figma Plugin to XState (https://github.com/ddanielbee/figma-fsm) XState-Usage with Vue (https://xstate.js.org/docs/recipes/vue.html) DefinitelyTyped Repo (https://github.com/DefinitelyTyped/DefinitelyTyped) The Keyframers (https://keyframe.rs/) “Phoenix Wright: Ace Attorney- Dual Destinies (3DS, IOS, Android) (https://en.wikipedia.org/wiki/Phoenix_Wright:_Ace_Attorney_%25E2%2580%2593_Dual_Destinies) “Ten Second Songs”-YouTube (https://www.youtube.com/user/TenSecondSongs/about) “So You Want to Talk About Race” (https://bookshop.org/books/so-you-want-to-talk-about-race/9781580058827) “Explosions In the Sky” by Disintegration Anxiety (https://www.youtube.com/watch?v=xT2UmlUmDQI) “Dead to Me”-Netflix (https://www.netflix.com/title/80219707) “Using State Machines in Vue.js with XState” by Sarah Dayan (https://frontstuff.io/using-state-machines-in-vuejs-with-xstate) midi.city (https://midi.city/) Acer Predator Triton 500 (https://www.acer.com/ac/en/US/content/predator-series/predatortriton500) Special Guests: David Khourshid and Sarah Dayan.
David Khourshid is the man bringing statecharts to the frontend. We talk about XState, model-based testing with xstate-test, and the future designer/coder integration For the month of february, we're chatting exclusively with Reactathon speakers. You can hear more from David on the topic state-charts for UI development this march. Reactathon is a top React conference in the heart of San Francisco. David and I will be there, chewing people's ears off about better designer tooling. Get a ticket at reactathon.com.
Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Host: Charles Max Wood Joined By Special Guest: Anatoliy Zaslavskiy Episode Summary Anatoliy Zaslavskiy has been interested in computers since he was 7 years old, and began his programming career in high school, doing web development in PHP for the online community for his favorite show Avatar: The Last Airbender. Anatoliy currently works for Hover as a Frontend developer transforming home photos into 3D models to help visualize what the final project will look like. Anatoliy shares his journey as a developer with bipolar disorder and tells us how he restructured his career with his employer so he can focus on projects that he enjoys working on. This way he performs at his best and both him and Hover can benefit from his talents. Anatoliy and Charles stress the importance for companies to talk to their developers to understand their nature as both parties benefit from open and honest dialogue. Links JavaScript Jabber 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy Anatoliy's Website Anatoliy's Facebook Anatoliy's LinkedIn https://www.facebook.com/javascriptjabber https://twitter.com/JSJabber https://www.facebook.com/DevChattv Picks Anatoliy Zaslavskiy: XState - JavaScript State Machines and Statecharts Nozbe/WatermelonDB: High-performance reactive database Monorepo Charles Max Wood: https://www.twitch.tv/ OBS: Open Broadcaster Software
Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Host: Charles Max Wood Joined By Special Guest: Anatoliy Zaslavskiy Episode Summary Anatoliy Zaslavskiy has been interested in computers since he was 7 years old, and began his programming career in high school, doing web development in PHP for the online community for his favorite show Avatar: The Last Airbender. Anatoliy currently works for Hover as a Frontend developer transforming home photos into 3D models to help visualize what the final project will look like. Anatoliy shares his journey as a developer with bipolar disorder and tells us how he restructured his career with his employer so he can focus on projects that he enjoys working on. This way he performs at his best and both him and Hover can benefit from his talents. Anatoliy and Charles stress the importance for companies to talk to their developers to understand their nature as both parties benefit from open and honest dialogue. Links JavaScript Jabber 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy Anatoliy's Website Anatoliy's Facebook Anatoliy's LinkedIn https://www.facebook.com/javascriptjabber https://twitter.com/JSJabber https://www.facebook.com/DevChattv Picks Anatoliy Zaslavskiy: XState - JavaScript State Machines and Statecharts Nozbe/WatermelonDB: High-performance reactive database Monorepo Charles Max Wood: https://www.twitch.tv/ OBS: Open Broadcaster Software
Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Host: Charles Max Wood Joined By Special Guest: Anatoliy Zaslavskiy Episode Summary Anatoliy Zaslavskiy has been interested in computers since he was 7 years old, and began his programming career in high school, doing web development in PHP for the online community for his favorite show Avatar: The Last Airbender. Anatoliy currently works for Hover as a Frontend developer transforming home photos into 3D models to help visualize what the final project will look like. Anatoliy shares his journey as a developer with bipolar disorder and tells us how he restructured his career with his employer so he can focus on projects that he enjoys working on. This way he performs at his best and both him and Hover can benefit from his talents. Anatoliy and Charles stress the importance for companies to talk to their developers to understand their nature as both parties benefit from open and honest dialogue. Links JavaScript Jabber 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy Anatoliy's Website Anatoliy's Facebook Anatoliy's LinkedIn https://www.facebook.com/javascriptjabber https://twitter.com/JSJabber https://www.facebook.com/DevChattv Picks Anatoliy Zaslavskiy: XState - JavaScript State Machines and Statecharts Nozbe/WatermelonDB: High-performance reactive database Monorepo Charles Max Wood: https://www.twitch.tv/ OBS: Open Broadcaster Software
Panel: Charles Max Wood Lucas Reis (NY) Nader Dabit Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler who is a web developer and moved into JavaScript in 2000. Christopher runs his own business, and records and edits videos among many other responsibilities. He also has a lot of hobbies, and guitars are one of them. Check out today’s episode where the panel and Christopher talk about how to form a tutorial course from start to finish. Show Topics: 2:38 – Chuck: I always am fascinated by how there are a lot of programmers who are musicians. 3:00 – Panelist: Yes, I agree. Coding takes creativity. People who are programmers are surprisingly into different arts where it asks for the person’s creativity. 3:17 – Panelist: Video games, music, cocktails, etc. 4:05 – Guest: Yes, for a while I liked to make beer. My current kitchen doesn’t allow for it now, though. 4:25 – Chuck: So your 84/86 tutorial course... 4:46 – Guest: I liked to be one or two weeks ahead. Now building the entire app, instead of doing it week-to-week. 5:35 – Chuck: What is the process like – building these videos? 5:51 – Guest: I try to focus on MVP products that are super easy, and that aren’t too complicated. For example, Music List. Add albums and artists, and see other people’s lists. It ended up being a long tutorial. The process: I build the app, rebuild the app from scratch, I start with a script, read the pretty version and have the marked-down one for my use. The script goes up as the text tutorial. Do my video editing in Adobe Premiere. 7:55 – Question from panel. 8:52 – Panelist: I have found that extremely hard to do. 9:29 – Chuck talks about his process of recording his tutorials. Chuck: I don’t have a script; I just walk through it as I am going along. You can get it transcribed, which I have done in the past. I have a license for Adobe Premiere. 11:04 – Panelist: I never recorded a tutorial before but I have written a lot of blog posts. I reviewed it, and reviewing it is a very interesting take. I learn a lot in the process. The things cement in my mind while reviewing. Videos you have the real-time thing going on. 12:00 – Guest adds additional comments. 13:39 – Chuck chimes in. Chuck: We really appreciate you leaving the mistakes in. 14:11 – Guest: Yes, they watch you debug. 14:20 – Panelist: Most of your tutorials are beginner focused, right? 14:23 – Guest: Yes. Christopher goes into detail here. 17:13 – Chuck chimes in. Chuck: My thought is to learn x, y, z in 1 hour. 17:35 – Guest: People are attracted to shorter tutorials. 5-minute React. Don’t build an 84 tutorial course. They are built up to digestible chunks. It’s not wall-to-wall coding, because that would seem overwhelming to me. Let’s learn something in a bite-size chunk. 18:41 – Panelist: Egghead. Because of their guidelines they do good work. 1-5 minutes long tutorials. You can get a good run-down and a good introduction. 19:24 – Panelist: You can find it really easy. You don’t need a 1-hour video. 19:40 – Chuck: Yeah, to break it up in small sections. People will see this in my e-book course. 20:02 – Panelist: Do people give you a lot of feedback? What parts of this React course do people have most difficulty with? 20:21 – Guest: It’s not React based, it’s actually other issues. 210:6 – Guest: Redux. 21:53 – Guest: What’s the best way to use props? Where should I put my Logic versus... 22:15 – Panelist: This is very similar when I teach... 22:46 – Guest: I have seen people say that if you truly see how this works in JavaScript then you really understand how JavaScript works. React can be confusing if you are using class-based components. You have to use binder or error functions, etc. It becomes confusing at times. Another area you mentioned was state: component state or your application state. Two different things, but they interact with each other. Understanding the difference between the two. Should I store it in this store or...? 24:09 – Digital Ocean Advertisement. 24:47 – Panelist: Were you doing this as a side thing? How do you keep up in the industry if you aren’t making “real” projects? 25:25 – Guest gives his answer plus his background with companies, clients, and programs. Guest: I really wanted to build my own company, when I was thinking of ideas I came across some great brainstorming ideas. I have a lot of traffic coming to these tutorials. I really liked giving something back to the web development community. I liked interacting with people and getting them to their “Ah Ha!” moment. It’s able to support me and helps me moving forward. I follow a ton of people on Twitter – the React team. I pay a ton of attention to what people are looking to learn. I play around those things for my own edification. I pick up some contract work and it helps me to stay current. It’s always a culmination for things. Part of the job is not to fall behind. If you are creating tutorials you have to reteach yourself things as things changes. 28:46 – Panelist asks another question. How do you get new leads and new customers? 20:02 – Guest answers questions. Guest: I was on a mentality if “I build it they will come.” This isn’t the best mentality. That was not a good approach. I started working with a consultant: how do we get this out to people? No ads, no subscription service. My e-mail list. I have gone from 1,600 to 4,600 people on my email list. Find the people who are interested. 32:52 – Guest: Find your voice, and how you choose to deliver your information. Text? Video? Or both? What do you want to teach? Don’t teach what you think will sell the most. It’s more important to be excited an interested what you are teaching. 34:05 – Panelist: When I am teaching something I try to remember of the feeling when I was learning it. For example, Harrison Ford. What was I thinking? How did I learn this concept? 35:01 – Guest: When I learned React it was because a client asked me to learn it. 4-6 weeks of exhausting terror and me trying to learn this to make useful code for this client. In about that time (4-6 weeks) “Oh I understand what I am doing now!” We are still on good terms today with this said client. When I am trying to learn something, the next level is here is a blog, and comments. There aren’t a lot of intermediary steps. They explain every kind of step. I took a similar approach with my other course. That’s informed by my own experience when learning these different technologies. 37:08 – Guest: Yes – check out my newsletter, and my new resource every week. Follow me at Twitter or my personal Twitter where I talk about the NBA too much. Email me if you have any questions. 38:11 – Chuck: Anything else? Okay, picks! 38:24 – Chuck’s Advertisement for His Course! 39:01 – Picks! Links: Kendo UI Ruby on Rails Angular Get A Coder Job Redux Adobe Premiere Close Brace Five Minute React Egghead State of JavaScript Statecharts James R. Nelson Christopher Buecheler’s Website Christopher Buecheler’s Books Christopher Buecheler’s Twitter Christopher Buecheler’s LinkedIn Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles Pre-Sale: Get A Coder Job DevChat TV Website – Notion.So Lucas Statecharts Nader Book Title: Evicted: Poverty and Profit in the American City by Matthew Desmond Author is a sociologist. Going through their day-to-day lives of these low-income families. A lot of it has to do with a room over their head. How they struggle and how poverty goes from one generation to the next. Christopher Shout-Out to a friend – Christopher’s Site 5-Minute React Videos
Panel: Charles Max Wood Lucas Reis (NY) Nader Dabit Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler who is a web developer and moved into JavaScript in 2000. Christopher runs his own business, and records and edits videos among many other responsibilities. He also has a lot of hobbies, and guitars are one of them. Check out today’s episode where the panel and Christopher talk about how to form a tutorial course from start to finish. Show Topics: 2:38 – Chuck: I always am fascinated by how there are a lot of programmers who are musicians. 3:00 – Panelist: Yes, I agree. Coding takes creativity. People who are programmers are surprisingly into different arts where it asks for the person’s creativity. 3:17 – Panelist: Video games, music, cocktails, etc. 4:05 – Guest: Yes, for a while I liked to make beer. My current kitchen doesn’t allow for it now, though. 4:25 – Chuck: So your 84/86 tutorial course... 4:46 – Guest: I liked to be one or two weeks ahead. Now building the entire app, instead of doing it week-to-week. 5:35 – Chuck: What is the process like – building these videos? 5:51 – Guest: I try to focus on MVP products that are super easy, and that aren’t too complicated. For example, Music List. Add albums and artists, and see other people’s lists. It ended up being a long tutorial. The process: I build the app, rebuild the app from scratch, I start with a script, read the pretty version and have the marked-down one for my use. The script goes up as the text tutorial. Do my video editing in Adobe Premiere. 7:55 – Question from panel. 8:52 – Panelist: I have found that extremely hard to do. 9:29 – Chuck talks about his process of recording his tutorials. Chuck: I don’t have a script; I just walk through it as I am going along. You can get it transcribed, which I have done in the past. I have a license for Adobe Premiere. 11:04 – Panelist: I never recorded a tutorial before but I have written a lot of blog posts. I reviewed it, and reviewing it is a very interesting take. I learn a lot in the process. The things cement in my mind while reviewing. Videos you have the real-time thing going on. 12:00 – Guest adds additional comments. 13:39 – Chuck chimes in. Chuck: We really appreciate you leaving the mistakes in. 14:11 – Guest: Yes, they watch you debug. 14:20 – Panelist: Most of your tutorials are beginner focused, right? 14:23 – Guest: Yes. Christopher goes into detail here. 17:13 – Chuck chimes in. Chuck: My thought is to learn x, y, z in 1 hour. 17:35 – Guest: People are attracted to shorter tutorials. 5-minute React. Don’t build an 84 tutorial course. They are built up to digestible chunks. It’s not wall-to-wall coding, because that would seem overwhelming to me. Let’s learn something in a bite-size chunk. 18:41 – Panelist: Egghead. Because of their guidelines they do good work. 1-5 minutes long tutorials. You can get a good run-down and a good introduction. 19:24 – Panelist: You can find it really easy. You don’t need a 1-hour video. 19:40 – Chuck: Yeah, to break it up in small sections. People will see this in my e-book course. 20:02 – Panelist: Do people give you a lot of feedback? What parts of this React course do people have most difficulty with? 20:21 – Guest: It’s not React based, it’s actually other issues. 210:6 – Guest: Redux. 21:53 – Guest: What’s the best way to use props? Where should I put my Logic versus... 22:15 – Panelist: This is very similar when I teach... 22:46 – Guest: I have seen people say that if you truly see how this works in JavaScript then you really understand how JavaScript works. React can be confusing if you are using class-based components. You have to use binder or error functions, etc. It becomes confusing at times. Another area you mentioned was state: component state or your application state. Two different things, but they interact with each other. Understanding the difference between the two. Should I store it in this store or...? 24:09 – Digital Ocean Advertisement. 24:47 – Panelist: Were you doing this as a side thing? How do you keep up in the industry if you aren’t making “real” projects? 25:25 – Guest gives his answer plus his background with companies, clients, and programs. Guest: I really wanted to build my own company, when I was thinking of ideas I came across some great brainstorming ideas. I have a lot of traffic coming to these tutorials. I really liked giving something back to the web development community. I liked interacting with people and getting them to their “Ah Ha!” moment. It’s able to support me and helps me moving forward. I follow a ton of people on Twitter – the React team. I pay a ton of attention to what people are looking to learn. I play around those things for my own edification. I pick up some contract work and it helps me to stay current. It’s always a culmination for things. Part of the job is not to fall behind. If you are creating tutorials you have to reteach yourself things as things changes. 28:46 – Panelist asks another question. How do you get new leads and new customers? 20:02 – Guest answers questions. Guest: I was on a mentality if “I build it they will come.” This isn’t the best mentality. That was not a good approach. I started working with a consultant: how do we get this out to people? No ads, no subscription service. My e-mail list. I have gone from 1,600 to 4,600 people on my email list. Find the people who are interested. 32:52 – Guest: Find your voice, and how you choose to deliver your information. Text? Video? Or both? What do you want to teach? Don’t teach what you think will sell the most. It’s more important to be excited an interested what you are teaching. 34:05 – Panelist: When I am teaching something I try to remember of the feeling when I was learning it. For example, Harrison Ford. What was I thinking? How did I learn this concept? 35:01 – Guest: When I learned React it was because a client asked me to learn it. 4-6 weeks of exhausting terror and me trying to learn this to make useful code for this client. In about that time (4-6 weeks) “Oh I understand what I am doing now!” We are still on good terms today with this said client. When I am trying to learn something, the next level is here is a blog, and comments. There aren’t a lot of intermediary steps. They explain every kind of step. I took a similar approach with my other course. That’s informed by my own experience when learning these different technologies. 37:08 – Guest: Yes – check out my newsletter, and my new resource every week. Follow me at Twitter or my personal Twitter where I talk about the NBA too much. Email me if you have any questions. 38:11 – Chuck: Anything else? Okay, picks! 38:24 – Chuck’s Advertisement for His Course! 39:01 – Picks! Links: Kendo UI Ruby on Rails Angular Get A Coder Job Redux Adobe Premiere Close Brace Five Minute React Egghead State of JavaScript Statecharts James R. Nelson Christopher Buecheler’s Website Christopher Buecheler’s Books Christopher Buecheler’s Twitter Christopher Buecheler’s LinkedIn Sponsors: Kendo UI Digital Ocean Get A Coder Job Picks: Charles Pre-Sale: Get A Coder Job DevChat TV Website – Notion.So Lucas Statecharts Nader Book Title: Evicted: Poverty and Profit in the American City by Matthew Desmond Author is a sociologist. Going through their day-to-day lives of these low-income families. A lot of it has to do with a room over their head. How they struggle and how poverty goes from one generation to the next. Christopher Shout-Out to a friend – Christopher’s Site 5-Minute React Videos
Kevin Lynagh is a designer specializing in user interfaces for complex systems. He co-created Subform, a CAD-inspired UI design tool, with Ryan Lucas, which got a thousand backers on Kickstarter. He recently created Sketch.systems, an interactive playground for designing system behavior using Statecharts (hierarchical state machines). In this conversation, we discuss direct manipulation, Statecharts, challenges of layout engines, visual programming languages, the Clojure community, constraint systems, and the three different types of programmers. futureofcoding.org/episodes/25
En esta nueva entrega de Script Time enfrentamos a uno de los más grandes malentendidos de la programación: “Un desarrollador solo escribe código”. Este pensamiento suele ser recurrente en los principiantes dentro de este campos aunque no es raro que personas con experiencia lo piensen igual. Los programadores generalmente emplean el ciclo de trabajo que consiste en escribir un código, compilarlo y corregir los errores que se van generando hasta lograr un resultado medianamente aceptable. Esta es la razón por la que ninguna compañía da una garantía sobre su software. El trabajo de un desarrollador es crear herramientas que permitan resolver problemas mediante software. Para crearlas obviamente es necesario utilizar código pero una práctica es realizar otras tareas como la especificación antes de tratar siquiera escribir una sola línea. Una de las formas recomendadas por la ingeniería de software (No la carrera) para hacer esta clase de trabajos es luego de tomar los requisitos de un cliente realizar una tarea conocida como especificación. Esta consiste en convertir algo ambiguo como la lengua en un lenguaje que no permite ambigüedades y sea abstracto a la vez. Entre los diversos métodos contamos con lenguajes como Z, Statecharts, entre otros. Dicha tarea no es realizada necesariamente por un desarrollador sino por un especificador (puede darse el caso que sean la misma persona). El desarrollador debe convertir esa especificación en código. Aplicar este paso intermedio ayuda a eliminar grán cantidad de posibles errores y a diferencia de lo que puede parecer agregar estas tareas suele, en el peor de los casos, costar tanto económicamente como temporalmente lo mismo que el desarrollo estándar. A pesar de sus ventajas cabe remarcar que no muchos desarrolladores conocen esta técnica. Por último podríamos comparar ambos métodos como una montaña. La cima es el punto de partida y la base el objetivo. De un lado tenemos una superficie totalmente lisa y una caída libre y por el otro un relieve similar a escalones. La primer ladera representa el desarrollo estándar mientras que la segunda a los pasos intermedios. Hacer estas reducciones no quita todos los inconvenientes pero bien que ayuda, Este episodio es parte de la respuesta a un escucha del podcast. Si tu tienes algún tema que te interese no dudes en proponerlo. Con gusto lo trataremos. ********************************** App de iOS: https://itunes.apple.com/us/app/code-time/id1435749618 ********************************** Para Contribuir PAYPAL : davidgiordana@hotmail.com.ar PATREON: https://www.patreon.com/codetime ********************************** Curso completo de desarrollo en Swift 4 desde cero https://www.udemy.com/curso-completo-de-swift-4-desde-cero/?couponCode=YOUTUBE_1 Curso de desarrollo de aplicaciones para iOS 11 desde cero https://www.udemy.com/desarrollo-de-aplicaciones-para-ios-11-desde-cero/?couponCode=YOUTUBE_1 ********************************** Medios de contacto: Twitter / Telegram: @DavidGiordana Correo Electrónico: davidgiordana0@gmail.com Grupo en Telegram: https://t.me/joinchat/C-YEzBGu5Jh-mu8ejM2toA ********************************** Medios de Contacto CANAL DE TELEGRAM: https://telegram.me/Code_Time PODCAST: https://goo.gl/QUximq ITUNES: https://goo.gl/XmDjX2 ********************************** Canciones Utilizadas OP: A Himitsu - Adventures: youtu.be/8BXNwnxaVQE ED: See You Tomorrow by GoSoundtrack http://www.gosoundtrack.com/ Music provided by Audio Library https://youtu.be/idlqqMHd0W4
En esta nueva entrega de Script Time enfrentamos a uno de los más grandes malentendidos de la programación: “Un desarrollador solo escribe código”. Este pensamiento suele ser recurrente en los principiantes dentro de este campos aunque no es raro que personas con experiencia lo piensen igual. Los programadores generalmente emplean el ciclo de trabajo que consiste en escribir un código, compilarlo y corregir los errores que se van generando hasta lograr un resultado medianamente aceptable. Esta es la razón por la que ninguna compañía da una garantía sobre su software. El trabajo de un desarrollador es crear herramientas que permitan resolver problemas mediante software. Para crearlas obviamente es necesario utilizar código pero una práctica es realizar otras tareas como la especificación antes de tratar siquiera escribir una sola línea. Una de las formas recomendadas por la ingeniería de software (No la carrera) para hacer esta clase de trabajos es luego de tomar los requisitos de un cliente realizar una tarea conocida como especificación. Esta consiste en convertir algo ambiguo como la lengua en un lenguaje que no permite ambigüedades y sea abstracto a la vez. Entre los diversos métodos contamos con lenguajes como Z, Statecharts, entre otros. Dicha tarea no es realizada necesariamente por un desarrollador sino por un especificador (puede darse el caso que sean la misma persona). El desarrollador debe convertir esa especificación en código. Aplicar este paso intermedio ayuda a eliminar grán cantidad de posibles errores y a diferencia de lo que puede parecer agregar estas tareas suele, en el peor de los casos, costar tanto económicamente como temporalmente lo mismo que el desarrollo estándar. A pesar de sus ventajas cabe remarcar que no muchos desarrolladores conocen esta técnica. Por último podríamos comparar ambos métodos como una montaña. La cima es el punto de partida y la base el objetivo. De un lado tenemos una superficie totalmente lisa y una caída libre y por el otro un relieve similar a escalones. La primer ladera representa el desarrollo estándar mientras que la segunda a los pasos intermedios. Hacer estas reducciones no quita todos los inconvenientes pero bien que ayuda, Este episodio es parte de la respuesta a un escucha del podcast. Si tu tienes algún tema que te interese no dudes en proponerlo. Con gusto lo trataremos. ********************************** App de iOS: https://itunes.apple.com/us/app/code-time/id1435749618 ********************************** Para Contribuir PAYPAL : davidgiordana@hotmail.com.ar PATREON: https://www.patreon.com/codetime ********************************** Curso completo de desarrollo en Swift 4 desde cero https://www.udemy.com/curso-completo-de-swift-4-desde-cero/?couponCode=YOUTUBE_1 Curso de desarrollo de aplicaciones para iOS 11 desde cero https://www.udemy.com/desarrollo-de-aplicaciones-para-ios-11-desde-cero/?couponCode=YOUTUBE_1 ********************************** Medios de contacto: Twitter / Telegram: @DavidGiordana Correo Electrónico: davidgiordana0@gmail.com Grupo en Telegram: https://t.me/joinchat/C-YEzBGu5Jh-mu8ejM2toA ********************************** Medios de Contacto CANAL DE TELEGRAM: https://telegram.me/Code_Time PODCAST: https://goo.gl/QUximq ITUNES: https://goo.gl/XmDjX2 ********************************** Canciones Utilizadas OP: A Himitsu - Adventures: youtu.be/8BXNwnxaVQE ED: See You Tomorrow by GoSoundtrack http://www.gosoundtrack.com/ Music provided by Audio Library https://youtu.be/idlqqMHd0W4
In this episode we speak with David Harel, who is professor of computer science at the Weizmann Institute of Science in Israel. Born in London, England, he was Dean of the Faculty of Mathematics and Computer Science at the institute for seven years. Harel is best known for his work on dynamic logic, computability and software engineering. In the 1980s he invented the graphical language of Statecharts, which has been adopted as part of the UML standard. He has also published expository accounts of computer science, such as his award winning 1987 book "Algorithmics: The Spirit of Computing". He currently works on many diverse topics, including visual languages, graph layout, systems biology and the communication of odours. In this interview we touch upon different topics from David's diverse fields of study. Among other things we talk about his earlier work on statecharts, about some of the content of his books on algorithmics and his current research on modeling biological systems. This interview was recorded on the 25th of April 2013 at the Eindhoven University of Technology Interview by @freekl and @Mmz_Audio post-production by @mendelt Links for this podcast: David Harel's homepage from the Weizman Institute of Science is on http://www.wisdom.weizmann.ac.il/~harel/. Book: D. Harel, Algorithmics: The Spirit of Computing, Addison-Wesley, 3rd edition (with Y. Feldman), 2004. Book: D. Harel, Computers Ltd.: What They Really Can't Do, Oxford University Press, September 2000. Article: D. Harel, "Biting the Silver Bullet: Toward a Brighter Future for System Development", Computer 25:1 (1992), IEEE Press, 8-20 (pdf). Article: D. Harel, S. Maoz, S. Szekely and D. Barkan, "PlayGo: Towards a Comprehensive Tool for Scenario Based Programming", in Proceedings of the IEEE/ACM 25th Int. Conf. on Automated Software Engineering (ASE 2010), Antwerp, Belgium, pp. 359-360. (pdf). A full list of publications by David Harel on his website. On April 27th 2012 David Harel received an honorary doctorate from Eindhoven University of Technology
Class Diagrams: Inheritance, Developing Class Diagrams, Statecharts, Packages, what not to do to your iPhone.