Search a title or topic

Over 20 million podcasts, powered by 

Player FM logo
Artwork

Content provided by Jan David Nose and Roberto Pando. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Jan David Nose and Roberto Pando or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://staging.podcastplayer.com/legal.
Player FM - Podcast App
Go offline with the Player FM app!

Phoenix LiveView, Rails, and Email

35:31
 
Share
 

Manage episode 280080714 series 2840081
Content provided by Jan David Nose and Roberto Pando. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Jan David Nose and Roberto Pando or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://staging.podcastplayer.com/legal.

Summary

Rob and JD catch up again after missing a week. Rob enjoys learning new things, and has focused his attention on new knowledge vs. progress for the sake of progress. His work with GraphQL for the Taskful 3 API rewrite is one example, and rebuilding his portfolio website with nuxt another. Rob is excited about Phoenix LiveView, and its equivalent in Rails called StimulusReflex. JD and Rob geek out hard over the current state of the Rails ecosystem, starting with StimulusReflex and A May of WTFs, before discussing their enjoyment of strongly typed languages and what that means for Ruby. Talking about DHH's keynote at RailsConf Couch Edition–and his interesting perspective on Ruby and its–benefits brings them to hey.com and what it might introduce to Rails. Could it be a framework to more easily build mobile apps for Rails applications? And from hey.com they dive deep into their email setups, in particular their experience with ProtonMail.

Links

The Selfish Programmer talk from RailsConf
Rob's portfolio website

Stay in touch

Website: https://www.devnlife.com
Jan David: https://twitter.com/0x6a64
Rob: https://twitter.com/RobPando

  continue reading

32 episodes

Artwork
iconShare
 
Manage episode 280080714 series 2840081
Content provided by Jan David Nose and Roberto Pando. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Jan David Nose and Roberto Pando or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://staging.podcastplayer.com/legal.

Summary

Rob and JD catch up again after missing a week. Rob enjoys learning new things, and has focused his attention on new knowledge vs. progress for the sake of progress. His work with GraphQL for the Taskful 3 API rewrite is one example, and rebuilding his portfolio website with nuxt another. Rob is excited about Phoenix LiveView, and its equivalent in Rails called StimulusReflex. JD and Rob geek out hard over the current state of the Rails ecosystem, starting with StimulusReflex and A May of WTFs, before discussing their enjoyment of strongly typed languages and what that means for Ruby. Talking about DHH's keynote at RailsConf Couch Edition–and his interesting perspective on Ruby and its–benefits brings them to hey.com and what it might introduce to Rails. Could it be a framework to more easily build mobile apps for Rails applications? And from hey.com they dive deep into their email setups, in particular their experience with ProtonMail.

Links

The Selfish Programmer talk from RailsConf
Rob's portfolio website

Stay in touch

Website: https://www.devnlife.com
Jan David: https://twitter.com/0x6a64
Rob: https://twitter.com/RobPando

  continue reading

32 episodes

All episodes

×
 
Summary Rob is learning Rust, and feels like he's total beginner again. Rust's concept of ownership and its handling of strings are just different than any other language he has worked with, but JD ensures him that this is how everyone feels when starting with Rust... JD spent the last week working on their game, starting with rewriting everything. He explored using a game engine instead of React for the visualization, and really likes the approach. He set up the new game engine Bevy , and hacked around to integrate it with a gRPC API. One problem he didn't anticipate is that querying state in the game can only happen during the game's core loop. Running at 60Hz, this means any API request takes at least 16ms. 😫 This will require some research in the future... Diving deeper and deeper into game design and development, JD is amazed and inspired by the experience of the community. Looking specifically at user experience and Data-Oriented Design. For anyone who's interested in this, here are a few talks JD watched this week: - Understanding Data-Oriented Design for Entity-Component-Systems (Unity at GDC '19) - Building a Data-Oriented Future - Mike Acton And here are the two blog posts mentioned in the episode: - Introducing Bevy - Specs and Legion, two very different approaches to ECS Sorry for the audio quality in this episode. We had a small technical glitch and lost one of the high-quality recordings. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob is back home after a stressful trip to renew a passport. For JD it was the first week after his vacation, and he had to readjust to work again. He also wanted to shape some work after their discussion in the last episode, but didn't manage to get as far as he hoped. JD wonders if it makes more sense to focus on game development, or invest equally in building up a community around the project. Rob's concerned that someone might steal their work, and is not too enthusiastic about the idea of open source. The two start a long discussion around this, diving into the pros and cons of open source, the difficulties of monetization, and their fears and concerns regarding the success of the project. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob and JD catch up after their last episode on Shape Up . Rob has been studying game engines, and bought a Rust course. JD just watch the talk Bending the Curve from RustConf, in which Esteban Kuber talks about the difficulty teaching Rust to experienced programmers, and shares how it is necessary to unlearn certain assumptions from other programming languages. JD has been thinking a lot about how to really start the project he wants to do with Rob. Both are freaking out a little bit given the complexity of the goal they set themselves. JD expects a lot of research ahead of them, while Rob fears that this might demotivate him. The two discuss ways how to reduce the risk, and get to a playable prototype as fast as possible. This puts many earlier ideas into questions, and brings back a discussion about game engines and multiplayer. The two discuss building a singleplayer game first, and only if it is successful start working on multiplayer. But with so many unknowns, they probably simply have to start and learn more about their project before making such a choice. Special shout outs Passionate game developers mentioned in the podcast and their most recent games: Ryan Ford https://ryanford.itch.io/goobers-in-the-mix Cody Loyd https://codyloyd.itch.io/bug Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary YEAR 1 ANNIVERSARY! Rob and JD totally forgot that they released their first episode one year ago, and didn't prepare anything special... Rob has been reading Shape Up by Basecamp , and the two start discussing its content. Rob got hooked when he read that Basecamp doesn't keep a backlog. (And he now wonders how the Hey support team passes feature requests to the developers.) For JD, the concept of Fixed Time, Variable Scope resonated the most. Regarding backlogs, he thinks it is really helpful to reset every few weeks and ask what is most relevant now instead of blindly following a backlog that was created weeks or even months ago. Rob is still not convinced that it is worth taking the time to shape ideas, instead of just going ahead and implementing them. JD on the other hand thinks the more planning upfront the better, as it allows to focus on execution later on. Rob is afraid that shaping is unproductive and takes time away from implementation and demotivates, while JD hopes they learn how to become efficient in planning and reducing risk upfront to then enjoy the coding more. JD wrote a blog post covering the first feature the two are thinking about implementing, which can be found here https://jandavid.co/turtles-all-the-way-down-2 and here https://dev.to/jdno/turtles-all-the-way-down-10on . Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob is back after moving to Austin, Texas! And JD survived a heatwave in Europe that made it very tough to be productive. Nonetheless, JD managed to think more about the game he wants to build. And he set up a prototype with some technologies he is interested in exploring. To get Rob up to speed, he introduces the game Screeps , which is an MMO strategy game for programmers and an inspiration. From there, the discussion turns into a general reflection on video games, and what will be important for their game. JD then shares his vision for the game's technical architecture, consisting of a game engine, the player's code, and a UI at the minimum. For the game engine, JD is thinking about writing it in Rust. It's fast, has good memory management, but it is still young and the comparatively small ecosystem might make things more complicated. For the UI, JD wants to go with React since that runs almost anywhere. And finally for the API between the engine, the UI, and the player's code, JD was considering a REST interface, GraphQL, or gRPC. JD really likes the features of gRPC, and intents to use it in the prototype. Feeling a little bit overwhelmed by the complexity of designing a game, the two discuss a good strategy to get started with a very small feature. One idea is to generate events, and have the player react to them. This could be easily implemented without the need for a feature rich UI or advanced rules in the backend. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob had a busy week and some big news: He's moving next week. JD on the other hand took it a bit easier than usual this week, and has been thinking a lot about a new project. Reflecting on his past projects and why he started them, JD noticed a pattern. He began those projects to learn about a very specific topic, for example Stimulus , and once he did that there was not purpose in continuing with the project. Which led to quite a lot of unfinished work, a feeling of guilt, and the question if there's not a better way to practice programming. On the other hand, video games (especially competitive games) are designed with the single purpose in mind to teach players a mechanic and have them master it. JD wonders if we can't learn from game design to make learning and practicing programming more interesting. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob and JD are back after a week without recording. Rob has been giving hey.com a spin as his email solution, and is enjoying the experience so far. JD is still contemplating how to optimize his own setup, now thinking of adding another email host in the middle as a backup. Other than that, JD has been a bit in a slump. He started a small side project, trying out Basecamp and Shape Up in the process, which has been a lot of fun. Especially the idea behind hill charts resonated with him, and reflected his own experience working on the project. The project JD started working on is a Rails app that uses OAuth for sign in. He's been working through the various different edge cases that this flow comes with, enjoying the challenge and working with Ruby again. Now that the authentication part is done, he is wondering what to do next, since there are too many different paths from which to choose. The two end the episode discussing 1Password and its business model. Rob doesn't want to be locked into a subscription service, and doesn't want to upload his passwords to the cloud. JD on the other hand gladly pays a monthly fee to know his password manager is improved and secure, and values the integration of 1Password with all modern operating systems. Rob is now looking into Keepass, after briefly considering building his own thing. PS: Sorry for the audio quality in this episode. Seems we both accidentally used the builtin microphone to record instead of our external ones. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob is back from a small vacation, while JD is waiting for his. During his vacation, Rob joined the virtual ElixirConf EU and got his invite for hey.com , the new email service by Basecamp . He has been on the fence about paying for email and migrating, and he's curious about JD's opinion on both hey.com and ProtonMail . JD shares his setup with a custom domain, and how he's been using ProtonMail the past few years. Rob has had advertised hey.com to friends, and had to argue why you would pay for email services. The two discuss the various ins and outs of email, the features of the two services, and their experience with email so far...…
 
Summary We are back to our normal recording schedule. Rob found a new intermediate programming course about Elixir that he started this weekend. It's by The Pragmatic Studio , and it slowly builds up a web framework from scratch. Rob is super excited about this, as he expects to learn a lot from the course. JD has been thinking about the last episode, and Rob's and his differing opinions on Rails and whether it does too much. Exploring Domain-Driven Design, he wonders how to apply the lessons he has learnt to Rails. Another thing on his mind has been the question how many projects one can do in one lifetime, raising the question if he is working on something important right now. He is reflecting on their goals to put something valuable into the world, and the reason they started the podcast in the first place. And finally, he saw the announcement of a talk that combines side projects with the science of habit formation. It also reminded him of Basecamp's Shape Up methodology, which is focused on delivering a working piece of software as quickly as possible. This made him think that there must be better ways to approach his projects than what he is doing now. All three thoughts combined raised the big question for him what to focus his attention on next. And since Rob and JD started the podcast to explore entrepreneurship, the two start to discuss what that means for their projects as well. Rob has been inspired by the Rework episode The Bookshop Around the Corner about a socially responsible business, and is thinking about how a business might help diversify his income as a freelancer. The two end the episode in agreement that there is a lot to think about, and that they'll have to continue the discussion in the next episode. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob plans some activities again in a world that slowly opens up, and shares his frustrating experience booking tickets for Universal Studios. JD is thinking about his summer vacation, and has decided to take a full three weeks off to recharge from the stress. It'll probably be a motorcycle vacation in Germany. The two chat about the cultural differences when it comes to holidays, especially between the US and Sweden. Then JD gives an update on his project, reflects on his approach, and describes how he shifted from a "getting things done" to a growth mindset to enjoy the work more. This has helped push him forward exploring DDD, which the two discuss in depth. With the lessons he learnt, JD rewrote the initial version of his domain model and is making much more progress than before. One insight in particular helped redesign the domain: Aggregates turned out to be one of the most difficult patterns to apply. There was an over-emphasis on access rules within aggregates (nobody can hold a reference to things within an aggregate apart from the aggregate root). A much more useful view at aggregates is to look at them as consistency boundaries for transactions, distributions and concurrency. Progress is still slow though, which prompts JD to reflect on his expectations on software development and open source. Do other people really write side projects in one weekend? Were popular projects open source projects really created in a day? Or is it a sign of practice and experience? And what role play frameworks in this? Do they support the projects, or do they hide too much complexity for learning? JD argues that he's been too focused on executing, and has not payed enough attention to deliberate practice. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob and JD go in depth about software architectures, domain driven design and web frameworks. JD is getting a bit overwhelmed at home, but still managing to dive into his side project and deciding and thinking about the architecture around it, while listening to a lot of Alicia Keys. Rob and JD discuss their, strong dislike for JavaScript because hate is a strong word, discussing all the "bugs/features" that the technology offers along with its crazy types. Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob and JD catch up again after missing a week. Rob enjoys learning new things, and has focused his attention on new knowledge vs. progress for the sake of progress. His work with GraphQL for the Taskful 3 API rewrite is one example, and rebuilding his portfolio website with nuxt another. Rob is excited about Phoenix LiveView , and its equivalent in Rails called StimulusReflex . JD and Rob geek out hard over the current state of the Rails ecosystem, starting with StimulusReflex and A May of WTFs , before discussing their enjoyment of strongly typed languages and what that means for Ruby. Talking about DHH's keynote at RailsConf Couch Edition–and his interesting perspective on Ruby and its–benefits brings them to hey.com and what it might introduce to Rails. Could it be a framework to more easily build mobile apps for Rails applications? And from hey.com they dive deep into their email setups, in particular their experience with ProtonMail . Links The Selfish Programmer talk from RailsConf Rob's portfolio website Stay in touch Website: https://www.devnlife.com Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary JD and Rob check in after another week of quarantine. JD's brain has gone into overdrive looking for problems to solve to distract from the current situation, while Rob has found peace rediscovering music from his past that fuels his coding. The talk of music gets the two sidetracked into discussing Spotify vs. Apple Music... When they recover, JD starts introducing a new project he is working on. Dreaming of a paperless office, but without a good system to organize his digital files, he is setting out to build a CLI in Rust that solves this problem for him. The idea is to have a folder with an inbox, and rules that can link files from the inbox into different indices. Think automatically indexing files by creation date, file type, user-provided tags, or other metadata... Lowkey Tech Playlist on Spotify: https://open.spotify.com/playlist/37i9dQZF1DX0r3x8OtiwEM Stay in touch Website: https://www.devnlife.com/ Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Summary Rob is enjoying his new life as a freelancer, while JD struggled through another stage of grief. He doesn't expect to be back in an office till autumn or even winter, and doesn't know how to take a vacation to really disconnect and get away from it all. Rob wonders if camping could be an option, and JD shares his dream to do a road trip with friends to the remote countryside of Sweden. While working on Taskful's backend, Rob has started to explore GraphQL. He also got hooked on the problem of password hashing, and how to design a more modern authentication system now that the backend is getting rewritten. JD put his sim racing project aside and has focused working on small Rust CLIs. The first is an old workflow for Alfred he wrote five years that he now rewrote in Rust. Next he wants to work on a CLI that can help him organize the documents on his machine. https://twitter.com/0x6a64/status/1254377149026447361 Stay in touch Website: https://www.devnlife.com/ Jan David: https://twitter.com/0x6a64 Rob: https://twitter.com/RobPando…
 
Loading …

Welcome to Player FM!

Player FM is scanning the web for high-quality podcasts for you to enjoy right now. It's the best podcast app and works on Android, iPhone, and the web. Signup to sync subscriptions across devices.

 

Copyright 2025 | Privacy Policy | Terms of Service | | Copyright
Listen to this show while you explore
Play