← Extractions

Adam Piotrowski — It is not so bad, after all (wroclove.rb 2025)

As the closing speaker of wroclove.rb 2025, Adam Piotrowski — CEO of 2NIT — replaces another speaker with a non-technical talk sharing stories of developer, client and project fuckups from his consultancy. Through seven vignettes (moonlighting developer, bogus seniority, a bullying partner client, an Indian handover that asked no questions, a Chinese crypto client fumbling documentation, an AWS Postgres pricing trap, a SOAP integration estimate 4x blown out, and a Norwegian Heroku coincidence) he extracts pragmatic lessons about trust, assertiveness, communication, cloud costs and supporting local communities.

Model
claude-opus-4-7
Ingestion
a6557577
Input tokens
321,168
fresh
226,332
cached
83,119
cache write
11,717
Output tokens
9,454
Duration
163.6s
Roundtrips
6
Tool calls
14
Cost
$0.00
Nodes/edges extracted
15 / 27
Read set (nodes/edges)
235 / 8

Nodes (15)

update Adam Piotrowski person
attrs (empty) {"role" => "CEO of 2NIT", "interests" => "networking, sailing, hearing other people's fuckups", "nationality" => "Pol...
description Ruby developer who attended wroclove.rb 2016 as a less-experienced developer, became fascinated by DDD/CQRS/sagas, an... Ruby developer who attended wroclove.rb 2016 as a less-experienced developer, became fascinated by DDD/CQRS/sagas, an...
short_description Ruby developer; DDD/CQRS practitioner inspired by wroclove.rb. CEO of 2NIT; Polish Ruby entrepreneur and community storyteller.
create 2NIT company
kind (empty) company
name (empty) 2NIT
slug (empty) 2nit
attrs (empty) {"industry" => "software consulting / team augmentation", "location" => "Poland"}
description (empty) Polish Ruby software house / team-augmentation company founded and led by Adam Piotrowski ('two-NIT' / '2nit'). Invol...
short_description (empty) Polish Ruby consultancy and team-augmentation company led by Adam Piotrowski.
update It is not so bad, after all talk
description Talk at wroclove.rb 2025. Adam Piotrowski's closing talk at wroclove.rb 2025, delivered as a last-minute replacement for another speaker. Delib...
short_description Talk at wroclove.rb 2025. Closing non-technical wroclove.rb 2025 talk of fuckup stories and pragmatic lessons.
create 2NIT Nerds on Lakes Sailing Trip event
kind (empty) event
name (empty) 2NIT Nerds on Lakes Sailing Trip
slug (empty) 2nit-nerds-on-lakes-sailing-trip
attrs (empty) {"format" => "in-person", "location" => "Poland (lakes)"}
description (empty) Recurring sailing trip ('nerds on lakes') organized by Adam Piotrowski / 2NIT in north-eastern Poland, inviting Ruby ...
short_description (empty) Recurring sailing trip hosted by Adam Piotrowski for Ruby community members.
create Erin Meyer person
kind (empty) person
name (empty) Erin Meyer
slug (empty) erin-meyer
description (empty) Author of 'The Culture Map', a book on how business communication norms differ across cultures. Recommended by an aud...
short_description (empty) Author of The Culture Map, a book on cross-cultural business communication.
create The Culture Map resource
kind (empty) resource
name (empty) The Culture Map
slug (empty) the-culture-map
attrs (empty) {"type" => "book", "author" => "Erin Meyer"}
description (empty) Book by Erin Meyer mapping how different cultures communicate, give feedback, handle hierarchy, etc. Recommended to A...
short_description (empty) Erin Meyer's book on how business communication differs across cultures.
create AWS Postgres Pricing Trap takeaway
kind (empty) takeaway
name (empty) AWS Postgres Pricing Trap
slug (empty) aws-postgres-pricing-trap
attrs (empty) {"type" => "lesson-learned"}
description (empty) Lesson from Adam Piotrowski's wroclove.rb 2025 talk: a pharma client's CTO left and the AWS billing/alert contact ema...
short_description (empty) Unmonitored AWS contact emails can silently turn an outdated Postgres into €10k/month of surcharges.
create Never Estimate Integrations Up-front takeaway
kind (empty) takeaway
name (empty) Never Estimate Integrations Up-front
slug (empty) never-estimate-integrations-up-front
attrs (empty) {"type" => "recommendation"}
description (empty) Lesson from the SOAP insurance API story (160h estimated, 700h actual): when an integration is involved Adam Piotrows...
short_description (empty) Integrations depend on vendor reality, not your code — don't accept fixed-price for them.
create Ask For Employee References takeaway
kind (empty) takeaway
name (empty) Ask For Employee References
slug (empty) ask-for-employee-references
attrs (empty) {"type" => "recommendation"}
description (empty) Observation from Adam Piotrowski's moonlighting-developer story: the tech industry rarely calls previous employers fo...
short_description (empty) Call the previous employer before hiring — it's underused in tech recruitment.
create Senior Is a Billing Title takeaway
kind (empty) takeaway
name (empty) Senior Is a Billing Title
slug (empty) senior-is-a-billing-title
attrs (empty) {"type" => "insight"}
description (empty) Takeaway from Adam Piotrowski's story about interviewing a 'senior Ruby tech lead' candidate with three years of solo...
short_description (empty) In business, 'senior' often just means 'we can charge 2× for this person'.
create Be Assertive As Your Rate Grows takeaway
kind (empty) takeaway
name (empty) Be Assertive As Your Rate Grows
slug (empty) be-assertive-as-your-rate-grows
attrs (empty) {"type" => "lesson-learned"}
description (empty) Lesson from the two-teams/one-client story where a big pharma-adjacent insurance client coerced 2NIT into 'handling i...
short_description (empty) A growing share of a senior rate is pay for saying no to bad ideas.
create Cultural Differences In Technical Communication concept
kind (empty) concept
name (empty) Cultural Differences In Technical Communication
slug (empty) cultural-differences-in-technical-communication
attrs (empty) {"category" => "practice"}
description (empty) Observation recurring through Adam Piotrowski's wroclove.rb 2025 stories: in some cultures (illustrated by his Indian...
short_description (empty) Some cultures won't tell you they don't understand — plan communication accordingly.
create Support Your Local Ruby Community takeaway
kind (empty) takeaway
name (empty) Support Your Local Ruby Community
slug (empty) support-your-local-ruby-community
attrs (empty) {"type" => "recommendation"}
description (empty) Closing call-to-action from Adam Piotrowski's wroclove.rb 2025 talk: appreciate conference sponsors (including those ...
short_description (empty) Talk to your boss about sponsoring meetups and conferences — communities are shrinking post-COVID.
create Should I have told my partner about the rumor? question
kind (empty) question
name (empty) Should I have told my partner about the rumor?
slug (empty) should-i-have-told-my-partner-about-the-rumor
attrs (empty) {"answer_summary" => "It depends on trust with the partner; with an established 7-year relationship he'd share immedi...
description (empty) Adam Piotrowski asks the wroclove.rb 2025 audience whether, at the start of a partner relationship, he should have sh...
short_description (empty) Was it right to withhold an unproven rumor about a subcontractor from a new partner?
create Book recommendation for cross-cultural communication question
kind (empty) question
name (empty) Book recommendation for cross-cultural communication
slug (empty) book-recommendation-for-cross-cultural-communication
attrs (empty) {"answer_summary" => "Read Erin Meyer's 'The Culture Map'."}
description (empty) Audience member responded to Adam Piotrowski's cultural-differences stories by recommending Erin Meyer's book 'The Cu...
short_description (empty) What resource helps with cultural differences in technical communication?

Edges (27)

update Adam PiotrowskiauthoredIt is not so bad, after all
context (empty) Closing speaker of wroclove.rb 2025; replacement speaker with non-technical stories.
update It is not so bad, after allpresented_atwroclove.rb 2025
context (empty) Closing talk of the 2025 edition.
create Adam Piotrowskiattendedwroclove.rb 2025
context (empty) Delivered the closing talk.
relation (empty) attended
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 4a9688cf-482e-48ac-a0b5-de88900bdb2b
create Adam Piotrowskiworks_at2NIT
attrs (empty) {"role" => "CEO"}
context (empty) CEO of 2NIT, the Ruby consultancy he runs.
relation (empty) works_at
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 1d0cbf4b-3f2e-46dd-94f8-c6ca8ba65ef2
create Adam Piotrowskiattendedwroclove.rb 2019
context (empty) Gave a lightning talk at wroclove.rb 2019 advising how to get into conferences for free by volunteering.
relation (empty) attended
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 8bcc988a-785d-4dfa-a063-1daa7ba349c0
create It is not so bad, after allaboutCultural Differences In Technical Communication
context (empty) Two of the talk's main stories (India handover, China crypto) illustrate how cultural norms shaped communication outc...
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) 5ea39c02-0b71-4b29-8a74-648cfaa6b673
create It is not so bad, after allaboutSOAP
context (empty) The insurance integration story hinges on a SOAP API whose documentation was misleading.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) ac58bea7-7b56-49ea-a886-91f0bb2aa3b0
create It is not so bad, after allaboutAmazon Web Services
context (empty) The pharma cloud-cost story is about AWS silently charging €10k/month for an outdated Postgres.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) 5b5f6a0e-b6dd-4a52-90a2-9b1547841cf8
create It is not so bad, after allaboutHeroku
context (empty) Norwegian magazine story: the Rails 2 app blew up after Heroku's CentOS upgrade the day after the estimate was rejected.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) d3785e15-2805-4486-a633-6e785e4f8ae3
create It is not so bad, after allaboutChatGPT
context (empty) The introducer joked about asking ChatGPT to summarize Adam, framing the opening of the talk.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) ad4d9c22-458a-4d00-947c-e5fb3221ebbf
create AWS Postgres Pricing Trapfrom_talkIt is not so bad, after all
context (empty) Lesson drawn from the pharma cloud story in the talk.
relation (empty) from_talk
source_node_id (empty) 42c7f02c-55be-42d9-8424-5e68561994b3
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Never Estimate Integrations Up-frontfrom_talkIt is not so bad, after all
context (empty) Lesson drawn from the 160h→700h SOAP integration story.
relation (empty) from_talk
source_node_id (empty) 4c3e965d-9a0a-4782-9973-3ea3fb159da5
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Ask For Employee Referencesfrom_talkIt is not so bad, after all
context (empty) Lesson drawn from the moonlighting-developer story.
relation (empty) from_talk
source_node_id (empty) 8a6a94bf-ff6c-40ed-b5ec-6e5b2ccef676
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Senior Is a Billing Titlefrom_talkIt is not so bad, after all
context (empty) Lesson drawn from the three-years-solo 'senior' candidate story.
relation (empty) from_talk
source_node_id (empty) 38469d22-bb91-4925-85a8-1b996b2de21a
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Be Assertive As Your Rate Growsfrom_talkIt is not so bad, after all
context (empty) Lesson drawn from the coerced two-teams/one-client story.
relation (empty) from_talk
source_node_id (empty) d0838fd0-f371-4f64-b4b9-41ee08569281
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Support Your Local Ruby Communityfrom_talkIt is not so bad, after all
context (empty) Closing call-to-action of the talk, thanking sponsors and urging community support.
relation (empty) from_talk
source_node_id (empty) b074921b-8bf6-4633-a358-81d9591cd0ca
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create AWS Postgres Pricing TrapaboutAmazon Web Services
context (empty) Describes AWS's extended-support surcharge for outdated Postgres.
relation (empty) about
source_node_id (empty) 42c7f02c-55be-42d9-8424-5e68561994b3
target_node_id (empty) 5b5f6a0e-b6dd-4a52-90a2-9b1547841cf8
create Never Estimate Integrations Up-frontaboutSOAP
context (empty) Anchored in a SOAP-based integration estimate that blew out 4x.
relation (empty) about
source_node_id (empty) 4c3e965d-9a0a-4782-9973-3ea3fb159da5
target_node_id (empty) ac58bea7-7b56-49ea-a886-91f0bb2aa3b0
create Should I have told my partner about the rumor?asked_atIt is not so bad, after all
context (empty) Adam posed the question to the audience during his talk.
relation (empty) asked_at
source_node_id (empty) f8bd5515-cbae-4ffa-80c7-22cc0daa5fe7
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Book recommendation for cross-cultural communicationasked_atIt is not so bad, after all
context (empty) Audience member responded to the cultural-differences stories with a book suggestion.
relation (empty) asked_at
source_node_id (empty) 8be313fe-95c8-45df-bd2f-39e6974145a3
target_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
create Book recommendation for cross-cultural communicationaboutThe Culture Map
context (empty) The recommended book, by Erin Meyer.
relation (empty) about
source_node_id (empty) 8be313fe-95c8-45df-bd2f-39e6974145a3
target_node_id (empty) 0b44139f-10e4-4f5e-a750-482b5a42b8b0
create Erin MeyerauthoredThe Culture Map
context (empty) Author of the book.
relation (empty) authored
source_node_id (empty) 491ae57e-1289-43ea-a141-5fa98063d1b3
target_node_id (empty) 0b44139f-10e4-4f5e-a750-482b5a42b8b0
create Adam PiotrowskirecommendsThe Culture Map
context (empty) Accepted the audience recommendation and said he would remember it.
relation (empty) recommends
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 0b44139f-10e4-4f5e-a750-482b5a42b8b0
create Adam Piotrowskiworks_on2NIT Nerds on Lakes Sailing Trip
attrs (empty) {"role" => "organizer"}
context (empty) Organizes the recurring sailing trip for the Ruby community.
relation (empty) works_on
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 12f395b8-60d9-4bd3-83d1-5844b7a029b0
create It is not so bad, after allabout2NIT Nerds on Lakes Sailing Trip
context (empty) Adam invites the audience to join the trip at the close of the talk.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) 12f395b8-60d9-4bd3-83d1-5844b7a029b0
create It is not so bad, after allaboutDHH
context (empty) Adam recommends DHH's keynote about moving off the cloud while drawing cloud-cost lessons.
relation (empty) about
source_node_id (empty) 0e32fa93-77db-4c24-9b01-71c17df2e549
target_node_id (empty) 51ed6191-ce15-4ca5-9eed-d55908e5ab88
create Adam PiotrowskirecommendsDHH
context (empty) Tells the audience to watch DHH's latest keynote on moving off the cloud.
relation (empty) recommends
source_node_id (empty) bb91e542-d8fd-49a6-8e44-c0c48c57161c
target_node_id (empty) 51ed6191-ce15-4ca5-9eed-d55908e5ab88

Read set

235 nodes

person Andrzej Krzywda list_nodes_by_kind person Krzysztof Hasiński list_nodes_by_kind person Kuba Suder list_nodes_by_kind event Advent of Code list_nodes_by_kind event Brighton Ruby list_nodes_by_kind event EmberConf list_nodes_by_kind event Eventide Summit 2023 list_nodes_by_kind event Hacktoberfest list_nodes_by_kind event KanDDDinsky list_nodes_by_kind event Rails World list_nodes_by_kind+search_nodes event wroclove.rb 2018 list_nodes_by_kind event wroclove.rb 2019 list_nodes_by_kind event wroclove.rb 2022 list_nodes_by_kind event wroclove.rb 2023 list_nodes_by_kind event wroclove.rb 2024 list_nodes_by_kind event wroclove.rb 2025 list_nodes_by_kind event wroclove.rb 2026 list_nodes_by_kind person Aaron Patterson list_nodes_by_kind person Adam Okoń list_nodes_by_kind person Adam Piotrowski list_nodes_by_kind+search_nodes+get_node_edges person Adrian Marin list_nodes_by_kind person Agnieszka Małaszkiewicz list_nodes_by_kind person Akira Matsuda list_nodes_by_kind person Albert Einstein list_nodes_by_kind person Alberto Brandolini list_nodes_by_kind person Alina Lova list_nodes_by_kind person Amanda list_nodes_by_kind person Amelia Walter-Dzikowska list_nodes_by_kind person Andrei Bondarev list_nodes_by_kind person Andrei Kaleshka list_nodes_by_kind person Andrew Kane list_nodes_by_kind person Andrey Sitnik list_nodes_by_kind person Andrzej Śliwa list_nodes_by_kind person Andy Hunt list_nodes_by_kind person Andy Kroll list_nodes_by_kind person Andy Maleh list_nodes_by_kind person Anita Jaszewska list_nodes_by_kind person Anton Davydov list_nodes_by_kind person Armin Pašalić list_nodes_by_kind person Arturo Herrero list_nodes_by_kind person Ayush Newatia list_nodes_by_kind person Bartosz Blimke list_nodes_by_kind person Ben Johnson list_nodes_by_kind person Bertrand Meyer list_nodes_by_kind person Caio Almeida list_nodes_by_kind person Charles Nutter list_nodes_by_kind person Chikahiro Tokoro list_nodes_by_kind person Chris Oliver list_nodes_by_kind person Claude Lévi-Strauss list_nodes_by_kind person Damir Zekić list_nodes_by_kind person Dan Kubb list_nodes_by_kind person Dave Thomas list_nodes_by_kind person David Halasz list_nodes_by_kind person DHH list_nodes_by_kind+search_nodes person Dimitry Salahutdinov list_nodes_by_kind person Elisabeth Kübler-Ross list_nodes_by_kind person Emiliano Della Casa list_nodes_by_kind person Eric Evans list_nodes_by_kind person Eric Normand list_nodes_by_kind person Erwin Kroon list_nodes_by_kind person Ethan Garofolo list_nodes_by_kind person Galileo Galilei list_nodes_by_kind person Garry Kasparov list_nodes_by_kind person G.K. Chesterton list_nodes_by_kind person Gottfried Wilhelm Leibniz list_nodes_by_kind person Greg Molnar list_nodes_by_kind person Greg Navis list_nodes_by_kind person Greg Young list_nodes_by_kind person Isaac Newton list_nodes_by_kind person Ismael Celis list_nodes_by_kind person Ivan Nemytchenko list_nodes_by_kind person Jakub Rodzik list_nodes_by_kind person Jan list_nodes_by_kind person Janko Marohnic list_nodes_by_kind person Jared list_nodes_by_kind person Joel Drapper list_nodes_by_kind person John Gallagher list_nodes_by_kind person John Hawthorne list_nodes_by_kind person Josef Strzibny list_nodes_by_kind person José Valim list_nodes_by_kind person Julik Tarkhanov list_nodes_by_kind person Karol Szuster list_nodes_by_kind person Koichi Sasada list_nodes_by_kind person Louis Antonopoulos list_nodes_by_kind person Lucian Ghinda list_nodes_by_kind person Łukasz Reszke list_nodes_by_kind person Łukasz Szydło list_nodes_by_kind person Maciej Rząsa list_nodes_by_kind person Maciek list_nodes_by_kind person Magnus Carlsen list_nodes_by_kind person Marco Heimeshoff list_nodes_by_kind person Mariusz Gil list_nodes_by_kind person Markus Schirp list_nodes_by_kind person Mark Zuckerberg list_nodes_by_kind person Martin Fowler list_nodes_by_kind person Martin Gamsjaeger list_nodes_by_kind person Masahiro Nakagawa list_nodes_by_kind person Mateusz Nowak list_nodes_by_kind person Matthias Verraes list_nodes_by_kind person Matz list_nodes_by_kind person Max Howell list_nodes_by_kind person Michał Bronikowski list_nodes_by_kind person Michał (Helpling) list_nodes_by_kind person Michal Matyas list_nodes_by_kind person Michał Młoźniak list_nodes_by_kind person Michał Zajączkowski de Mezer list_nodes_by_kind person Mike Dalessio list_nodes_by_kind person Mike Perham list_nodes_by_kind person Miron Marczuk list_nodes_by_kind person Nate Berkopec list_nodes_by_kind person Nathan Ladd list_nodes_by_kind person Nick Schwaderer list_nodes_by_kind person Nick Sutterer list_nodes_by_kind person Nicolò Rebughini list_nodes_by_kind person Norbert Wójtowicz list_nodes_by_kind person Pavo list_nodes_by_kind person Paweł Dąbrowski list_nodes_by_kind person Paweł Pacana list_nodes_by_kind person Paweł Pokrywka list_nodes_by_kind person Paweł Strzałkowski list_nodes_by_kind person Peter Solnica list_nodes_by_kind person Piotr Solnica list_nodes_by_kind person Radoslav Stankov list_nodes_by_kind person Rafael Zamaris list_nodes_by_kind person Rafał Cymerys list_nodes_by_kind person Rafał Rothenberger list_nodes_by_kind person René Descartes list_nodes_by_kind person Rich Hickey list_nodes_by_kind person Robert C. Martin list_nodes_by_kind person Romeu Moura list_nodes_by_kind person Ryan Townsend list_nodes_by_kind person Sam Newman list_nodes_by_kind person Sandi Metz list_nodes_by_kind person Scott Bell list_nodes_by_kind person Scott Bellware list_nodes_by_kind person Scott Wlaschin list_nodes_by_kind person Sean Schofield list_nodes_by_kind person Sebastian Wilgosz list_nodes_by_kind person Sergey Ivanov list_nodes_by_kind person Sergey Sergyenko list_nodes_by_kind person Seth Horsley list_nodes_by_kind person Sharon Rosner list_nodes_by_kind person Shona list_nodes_by_kind person Shugo Maeda list_nodes_by_kind person Soutaro Matsumoto list_nodes_by_kind person Stefan Wintermeyer list_nodes_by_kind person Stephan Schmidt list_nodes_by_kind person Stephen Margheim list_nodes_by_kind person Stephen Wolfram list_nodes_by_kind person Steve Ballmer list_nodes_by_kind person Szymon Fiedler list_nodes_by_kind person Szymon Kulec list_nodes_by_kind person Toby Lütke list_nodes_by_kind person Tomasz Donarski list_nodes_by_kind person Victor Shepelev list_nodes_by_kind person Vladimir Dementyev list_nodes_by_kind person Wojtek Wrona list_nodes_by_kind person Xavier Noria list_nodes_by_kind person Yaroslav Shmarov list_nodes_by_kind person Yatish Mehta list_nodes_by_kind person Yehuda Katz list_nodes_by_kind takeaway Name Things To Find Their Properties search_nodes tool RealtimeBoard search_nodes concept Retrieval Augmented Generation search_nodes concept Cynefin Framework search_nodes concept AI Agent search_nodes project Check search_nodes concept GraphQL max_depth search_nodes takeaway Add Fun to Keep Remote Workshops Human search_nodes tool langchainrb search_nodes concept Vector Embeddings search_nodes concept Majestic Monolith search_nodes tool Hatchbox search_nodes talk No-build Utopia: Modern User Experiences with Rails & Web Standards search_nodes talk How wroclove.rb impacts developers and companies search_nodes talk Toolbelt of a Seasoned Bug Hunter search_nodes talk From PostgreSQL to SQLite in Rails search_nodes talk Nightmare neighbours caveats of Rails based mutlitenancy search_nodes talk Multi-region data governance in Rails application search_nodes resource Drive search_nodes concept Crossing the Chasm search_nodes concept Context Map search_nodes concept Comfort With Layers search_nodes question Distinguishing anxiety from frustration on one-on-ones search_nodes resource Introducing EventStorming search_nodes question Moderating the Merge Phase in Remote Workshops search_nodes resource Grokking Simplicity search_nodes tool ChatGPT search_nodes tool ruby-openai search_nodes concept Prompt Alchemy search_nodes tool Midjourney search_nodes concept Large Language Models search_nodes concept Jailbreaking search_nodes tool Heroku search_nodes tool Render search_nodes takeaway Sign serverlessforruby.org petition search_nodes concept Direct Upload to Cloud search_nodes tool Cloudflare R2 search_nodes tool Honeycomb search_nodes takeaway Buy Faster Hardware search_nodes tool Amazon Route 53 search_nodes tool AWS Lambda search_nodes tool Apollo GraphQL Platform search_nodes talk It is not so bad, after all get_node_edges tool Amazon Web Services search_nodes tool Amazon CloudFront search_nodes tool AWS CloudWatch search_nodes tool Amazon S3 search_nodes tool Amazon ECS search_nodes tool Amazon Elastic Transcoder search_nodes tool AWS DataSync search_nodes tool AWS Elastic Load Balancer search_nodes concept tus protocol search_nodes concept SOAP search_nodes concept Service-Oriented Architecture search_nodes talk When REST is Not Enough: Implementing Alternative Protocols in Ruby on Rails search_nodes tool gRPC search_nodes project AnyCable search_nodes concept WebSockets search_nodes resource Rocket Real-Time Benchmark search_nodes tool Action Cable search_nodes concept Zero-Disconnect Deployment search_nodes talk Ruby on a $4 Computer search_nodes project Ruby Romania search_nodes takeaway Port Python Libraries With ChatGPT search_nodes tool YJIT search_nodes resource Short Ruby Newsletter search_nodes tool IronRuby search_nodes tool Ruby search_nodes talk Scientific Ruby Lightning Talk search_nodes tool Ruby Packer search_nodes project Ruby UI search_nodes talk Offline Sandwich Focus Workflow search_nodes concept Handwritten Incentive List and Action Plan search_nodes takeaway Publish Small Findings To Scale Debugging search_nodes

8 edges