← 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 Piotrowski → authored → It 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 all → presented_at → wroclove.rb 2025
context (empty) → Closing talk of the 2025 edition.
create Adam Piotrowski → attended → wroclove.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 Piotrowski → works_at → 2NIT
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 Piotrowski → attended → wroclove.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 all → about → Cultural 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 all → about → SOAP
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 all → about → Amazon 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 all → about → Heroku
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 all → about → ChatGPT
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 Trap → from_talk → It 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-front → from_talk → It 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 References → from_talk → It 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 Title → from_talk → It 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 Grows → from_talk → It 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 Community → from_talk → It 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 Trap → about → Amazon 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-front → about → SOAP
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_at → It 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 communication → asked_at → It 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 communication → about → The 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 Meyer → authored → The 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 Piotrowski → recommends → The 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 Piotrowski → works_on → 2NIT 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 all → about → 2NIT 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 all → about → DHH
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 Piotrowski → recommends → DHH
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