read-only demo

Videos wjk0ulMAkbc

Taste & Craft: A Conversation with Tuomas Artman, CTO Linear & Gergely Orosz, @pragmaticengineer

index_state ready data_status ok

AI Engineer· published 2026-04-21· 0:29:17· en· indexed 2026-08-10 23:38

Open on YouTube

Scene timeline

  1. Shot 0, 0:00 to 0:05, 1 of 1 keyframes kept
  2. Shot 1, 0:05 to 0:09, 1 of 1 keyframes kept
  3. Shot 2, 0:09 to 0:14, 1 of 1 keyframes kept
  4. Shot 3, 0:14 to 0:18, 1 of 1 keyframes kept
  5. Shot 4, 0:18 to 0:29, 1 of 1 keyframes kept
  6. Shot 5, 0:29 to 0:40, 1 of 1 keyframes kept
  7. Shot 6, 0:40 to 0:43, 1 of 1 keyframes kept
  8. Shot 7, 0:43 to 1:14, 1 of 1 keyframes kept
  9. Shot 8, 1:14 to 1:46, 1 of 1 keyframes kept
  10. Shot 9, 1:46 to 2:17, 0 of 1 keyframes kept
  11. Shot 10, 2:17 to 2:41, 1 of 1 keyframes kept
  12. Shot 11, 2:41 to 3:17, 1 of 1 keyframes kept
  13. Shot 12, 3:17 to 3:53, 1 of 1 keyframes kept
  14. Shot 13, 3:53 to 4:33, 1 of 1 keyframes kept
  15. Shot 14, 4:33 to 5:04, 1 of 1 keyframes kept
  16. Shot 15, 5:04 to 5:35, 1 of 1 keyframes kept
  17. Shot 16, 5:35 to 6:05, 1 of 1 keyframes kept
  18. Shot 17, 6:05 to 6:36, 1 of 1 keyframes kept
  19. Shot 18, 6:36 to 7:05, 1 of 1 keyframes kept
  20. Shot 19, 7:05 to 7:51, 1 of 1 keyframes kept
  21. Shot 20, 7:51 to 8:29, 1 of 1 keyframes kept
  22. Shot 21, 8:29 to 8:41, 1 of 1 keyframes kept
  23. Shot 22, 8:41 to 9:10, 1 of 1 keyframes kept
  24. Shot 23, 9:10 to 9:38, 1 of 1 keyframes kept
  25. Shot 24, 9:38 to 10:06, 0 of 1 keyframes kept
  26. Shot 25, 10:06 to 10:34, 1 of 1 keyframes kept
  27. Shot 26, 10:34 to 11:02, 1 of 1 keyframes kept
  28. Shot 27, 11:02 to 11:30, 1 of 1 keyframes kept
  29. Shot 28, 11:30 to 11:58, 1 of 1 keyframes kept
  30. Shot 29, 11:58 to 12:27, 1 of 1 keyframes kept
  31. Shot 30, 12:27 to 12:41, 1 of 1 keyframes kept
  32. Shot 31, 12:41 to 12:55, 1 of 1 keyframes kept
  33. Shot 32, 12:55 to 13:22, 1 of 1 keyframes kept
  34. Shot 33, 13:22 to 13:49, 1 of 1 keyframes kept
  35. Shot 34, 13:49 to 14:17, 1 of 1 keyframes kept
  36. Shot 35, 14:17 to 14:44, 1 of 1 keyframes kept
  37. Shot 36, 14:44 to 15:11, 1 of 1 keyframes kept
  38. Shot 37, 15:11 to 15:39, 1 of 1 keyframes kept
  39. Shot 38, 15:39 to 16:06, 1 of 1 keyframes kept
  40. Shot 39, 16:06 to 16:51, 1 of 1 keyframes kept
  41. Shot 40, 16:51 to 17:19, 1 of 1 keyframes kept
  42. Shot 41, 17:19 to 17:47, 1 of 1 keyframes kept
  43. Shot 42, 17:47 to 18:18, 1 of 1 keyframes kept
  44. Shot 43, 18:18 to 18:49, 1 of 1 keyframes kept
  45. Shot 44, 18:49 to 19:14, 1 of 1 keyframes kept
  46. Shot 45, 19:14 to 19:40, 0 of 1 keyframes kept
  47. Shot 46, 19:40 to 19:45, 1 of 1 keyframes kept
  48. Shot 47, 19:45 to 20:04, 1 of 1 keyframes kept
  49. Shot 48, 20:04 to 20:22, 1 of 1 keyframes kept
  50. Shot 49, 20:22 to 20:50, 1 of 1 keyframes kept
  51. Shot 50, 20:50 to 21:25, 1 of 1 keyframes kept
  52. Shot 51, 21:25 to 21:59, 1 of 1 keyframes kept
  53. Shot 52, 21:59 to 22:30, 1 of 1 keyframes kept
  54. Shot 53, 22:30 to 22:42, 1 of 1 keyframes kept
  55. Shot 54, 22:42 to 23:26, 1 of 1 keyframes kept
  56. Shot 55, 23:26 to 23:55, 1 of 1 keyframes kept
  57. Shot 56, 23:55 to 23:59, 1 of 1 keyframes kept
  58. Shot 57, 23:59 to 24:34, 1 of 1 keyframes kept
  59. Shot 58, 24:34 to 25:02, 1 of 1 keyframes kept
  60. Shot 59, 25:02 to 25:25, 1 of 1 keyframes kept
  61. Shot 60, 25:25 to 25:48, 1 of 1 keyframes kept
  62. Shot 61, 25:48 to 26:18, 1 of 1 keyframes kept
  63. Shot 62, 26:18 to 26:47, 0 of 1 keyframes kept
  64. Shot 63, 26:47 to 27:35, 1 of 1 keyframes kept
  65. Shot 64, 27:35 to 27:59, 1 of 1 keyframes kept
  66. Shot 65, 27:59 to 28:12, 1 of 1 keyframes kept
  67. Shot 66, 28:12 to 28:33, 1 of 1 keyframes kept
  68. Shot 67, 28:33 to 28:58, 1 of 1 keyframes kept
  69. Shot 68, 28:58 to 29:01, 1 of 1 keyframes kept
  70. Shot 69, 29:01 to 29:16, 1 of 1 keyframes kept

70 shot(s).

keyframes kept every frame deduplicated

What was stored

cues
379
whisperx 379
chunks
51
from 379 cues
keyframes
66
kept of 70 captured
frames with text
66
540 lines read
chapters
11
from the source metadata
keyframe bytes
7.5 MB
word timings on 379 cues

Provenance

Each pipeline stage, its state and the model that produced it
stage state model started took
fetch done 2026-08-10 23:32 1m 29s
stt done 2026-08-10 23:34 33s
chunk done 2026-08-10 23:34 0s
text_embed done 2026-08-10 23:34 0s
keyframe done 2026-08-10 23:34 3m 15s
ocr done 2026-08-10 23:37 16s
frame_embed done 2026-08-10 23:38 11s

Frames, and what the machine read

  • 0:02 #0 done2 line(s)

    shot 0·sharpness 667.3

    1. Al Engineer0.94
    2. EUROPE1.00
  • 0:06 #1 done2 line(s)

    shot 1·sharpness 825.0

    1. PRESENTINGSPONSOR1.00
    2. Google DeepMind1.00
  • 0:11 #2 done3 line(s)

    shot 2·sharpness 938.7

    1. PLATINUM SPONSORS0.98
    2. # Braintrust0.95
    3. WorkOS OpenAI0.95
  • 0:16 #3 done12 line(s)

    shot 3·sharpness 653.2

    1. GERGELY1.00
    2. TUOMAS1.00
    3. OROSZ0.99
    4. ARTMAN1.00
    5. AlEngineer0.97
    6. AlEngineer0.97
    7. EUROPE1.00
    8. AUTHOR1.00
    9. CO-FOUNDER, CTO1.00
    10. EUROPE1.00
    11. The Pragmatigineer0.96
    12. Linear1.00
  • 0:20 #4 done21 line(s)

    shot 4·sharpness 734.1

    1. AlEngineer0.94
    2. Google DeepMind1.00
    3. AlEngineer0.98
    4. Opel0.94
    5. EUROPE1.00
    6. EUROPE1.00
    7. Micoft0.99
    8. AlEngineer0.93
    9. nec0.85
    10. ee0.63
    11. AIEngi0.96
    12. EUROPE1.00
    13. EUROP1.00
    14. Te1.00
    15. WorkOS1.00
    16. AIE1.00
    17. THE DABNTE0.61
    18. AlEnaine0.93
    19. AlEngi0.94
    20. PE-0.97
    21. FLROP0.90
  • 0:30 #5 done6 line(s)

    shot 5·sharpness 244.9

    1. SAE0.89
    2. Al0.80
    3. INTELLIGENCE0.96
    4. AlEngineer0.99
    5. :neo4j0.96
    6. AI0.87
  • 0:41 #6 done6 line(s)

    shot 6·sharpness 234.5

    1. SAPE0.58
    2. Al0.86
    3. AlEngineer0.99
    4. :neo4j0.95
    5. THE ROASMATIC0.83
    6. AI0.92
  • 1:08 #7 done5 line(s)

    shot 7·sharpness 336.1

    1. AlEngineer0.98
    2. EUROPE1.00
    3. Microsoft1.00
    4. ingineer0.94
    5. FUPOPE0.93
  • 1:27 #8 done5 line(s)

    shot 8·sharpness 337.7

    1. AlEngineer0.97
    2. EUROPE1.00
    3. Microsoft1.00
    4. ngineer1.00
    5. FUPOPE0.88
  • 2:04 #9 skipped

    shot 9·duplicate of #7

  • 2:27 #10 done17 line(s)

    shot 10·sharpness 655.9

    1. EUROPE1.00
    2. EUROPE1.00
    3. nej0.89
    4. AlEngineer0.98
    5. Micra0.90
    6. AIEn0.91
    7. EUROPE1.00
    8. EU1.00
    9. SE0.84
    10. Braintrust1.00
    11. AlEngi0.83
    12. THE PRASMATIC0.90
    13. EUR1.00
    14. AlFnaine0.91
    15. AIEn0.90
    16. PE-0.90
    17. EU1.00
  • 3:09 #11 done5 line(s)

    shot 11·sharpness 355.3

    1. AlEngineer0.96
    2. EUROPE1.00
    3. Tessl1.00
    4. ingineer0.91
    5. EUROPE0.98
  • 3:25 #12 done5 line(s)

    shot 12·sharpness 371.2

    1. AlEngineer0.97
    2. EUROPE1.00
    3. Tessl1.00
    4. ngineer0.96
    5. EUROPE1.00
  • 4:02 #13 done17 line(s)

    shot 13·sharpness 661.8

    1. EUROPE1.00
    2. EUROPE1.00
    3. ne0.88
    4. AlEngineer0.98
    5. Micrc0.95
    6. AIEn0.93
    7. EUROPE1.00
    8. EU1.00
    9. SE0.86
    10. draintrust0.94
    11. AlEng0.93
    12. THE PRACMATIS0.81
    13. -IRC0.86
    14. AlEnaine0.86
    15. AIEn0.95
    16. PE-0.91
    17. EU1.00
  • 4:37 #14 done6 line(s)

    shot 14·sharpness 344.4

    1. AlEngineer0.99
    2. v0.71
    3. EUROPE1.00
    4. :neo4j0.91
    5. ingineer0.95
    6. EUROPE1.00
  • 5:31 #15 done6 line(s)

    shot 15·sharpness 344.5

    1. AlEngineer0.99
    2. v0.58
    3. EUROPE1.00
    4. :neo4j0.91
    5. ingineer0.93
    6. EUROPE1.00
  • 6:02 #16 done6 line(s)

    shot 16·sharpness 348.4

    1. AlEngineer0.98
    2. v0.63
    3. EUROPE1.00
    4. :neo4j0.91
    5. ingineer0.91
    6. EUROPE1.00
  • 6:24 #17 done5 line(s)

    shot 17·sharpness 349.3

    1. AlEngineer0.95
    2. EUROPE1.00
    3. comet1.00
    4. ingineer0.83
    5. EUROPE1.00
  • 6:39 #18 done15 line(s)

    shot 18·sharpness 655.7

    1. EUROPE1.00
    2. EUROPE1.00
    3. GooglepMind0.95
    4. AlEngineer0.98
    5. Won0.99
    6. AIEn0.93
    7. EUROPE1.00
    8. EU1.00
    9. Braintrust1.00
    10. AIEngi0.92
    11. EURC0.83
    12. AlFnaine0.92
    13. AIEn0.88
    14. PE-0.91
    15. EU1.00
  • 7:10 #19 done5 line(s)

    shot 19·sharpness 348.4

    1. AlEngineer0.99
    2. EUROPE1.00
    3. comet1.00
    4. ngineer0.95
    5. EUROPE1.00
  • 8:24 #20 done15 line(s)

    shot 20·sharpness 655.2

    1. EUROPE1.00
    2. EUROPE1.00
    3. Micft0.93
    4. AlEngineer0.99
    5. ne0.98
    6. AIEn0.92
    7. EUROPE1.00
    8. EU1.00
    9. WorkOS1.00
    10. AIEn0.90
    11. EU1.00
    12. AlFnaine0.90
    13. AIEn0.90
    14. PE-0.91
    15. EU1.00
  • 8:30 #21 done5 line(s)

    shot 21·sharpness 359.9

    1. AlEngineer0.98
    2. EUROPE1.00
    3. Microsoft1.00
    4. ngineer0.93
    5. EUROPE1.00
  • 9:01 #22 done15 line(s)

    shot 22·sharpness 661.0

    1. EUROPE1.00
    2. EUROPE1.00
    3. Micft1.00
    4. AlEngineer0.99
    5. nec0.94
    6. AIEn0.93
    7. EUROPE1.00
    8. EU1.00
    9. WorkOS1.00
    10. AlEng0.94
    11. EUF1.00
    12. AlEnaine0.86
    13. AIEn0.89
    14. PE-0.90
    15. EU1.00
  • 9:30 #23 done5 line(s)

    shot 23·sharpness 348.9

    1. AlEngineer0.98
    2. EUROPE1.00
    3. Microsoft1.00
    4. ingineer0.96
    5. EUROPE0.99

Transcript

379 cues· 5,058 words· 26,911 chars

  1. 0:16 Awesome.
  2. 0:16 So we didn't see it, but hands up if you do use linear.
  3. 0:20 And hands up if you've heard of linear.
  4. 0:22 And hands up if you want to use linear.
  5. 0:25 Awesome.
  6. 0:26 Great to see.
  7. 0:27 So we could be talking about linear, but we're going to be talking about something a bit bigger, which is a bit of a new trend that, with Thomas, we're talking about.
  8. 0:36 Things are trending the wrong way right now.
  9. 0:40 What is trending the wrong way?
  10. 0:46 What happens when agents are capable of doing everything immediately for you?
  11. 0:52 The fact that might be that the pendulum has swung too far into the wrong direction, where if you get a feature request, you might now be in the position to just immediately ship it.
  12. 1:04 And that might be the wrong thing to do.
  13. 1:06 And I reckon that hopefully, half a year from now or a year from now, we'll understand that shipping things without really too much thinking is a bad thing.
  14. 1:16 What will happen is that because you have this enormous power of effectively just shipping every single request that comes in or every single thing that pops into your head, you will effectively ship a software that is not great.
  15. 1:31 Steve Jobs back in the day said that great products come out of saying no to 999 things and yes to one thing.
  16. 1:38 With AI, we might be in a place where it's just too easy to say yes and try things out and ship it and get to a very convoluted place where software actually doesn't work for that customer.
  17. 1:49 nicely anymore, or that the user experience gets confusing.
  18. 1:53 We used to previously have this thing that gated us from doing this, which was the actual engineering used to be hard.
  19. 2:01 So we used to think about these features and these applications that we wanted to build before we actually started engineering, because engineering was such a waste of time, and it took a long time to ship something.
  20. 2:13 So, yeah.
  21. 2:16 But I want to challenge you a little bit on that.
  22. 2:18 Did we not see this happen before, before AI, that some companies were already just like shipping, putting on a bunch of features and stacking?
  23. 2:25 And what are you seeing different right now?
  24. 2:29 Are you actually, are we actually seeing more companies, you know, do more of this like, I don't know, like feature factoring thing?
  25. 2:36 We had a common experience at Uber, where we worked together, where we went through hyper growth.
  26. 2:42 And the thing about Uber was that it was a winner takes it all market.
  27. 2:44 And Uber was going against Lyft back in the day in the US.
  28. 2:48 And you just had to ship immensely and just outpace the competition at all costs.
  29. 2:56 And what I saw at Uber was that hyper growth that I never want to go through again, which was like at all costs, just fighting fires, keeping the infrastructure running, scaling as quickly as possible, trying out everything and trying to come out as a winner in that front.
  30. 3:12 And I see the analogy to AI nowadays because
  31. 3:16 When everybody has the capability of shipping tons of functionalities, you always are in a competition with somebody else.
  32. 3:23 Your competition might be a small team or even one person that is very capable of using AI to ship and build a product that has the same features as you do.
  33. 3:35 And in that world, I think it becomes important to stand out in a way where you build tasteful software.
  34. 3:42 and where you build high quality software and thus maintain some sort of competitive advantage towards your competition.
  35. 3:52 So at Linear, even before AI came out, you were building tasteful software and focusing on those things.
  36. 3:59 But then these tools came out and they became more powerful, specifically since Cloud Code came out.
  37. 4:04 Now we have Opus 4.5.
  38. 4:07 You should be able to ship faster.
  39. 4:09 Your engineering team, your CTO, your engineering team should be able to ship a lot faster.
  40. 4:14 What are you telling them?
  41. 4:16 What should they be doing inside of Linear with this capability?
  42. 4:20 Should they be slowing down?
  43. 4:22 No, right?
  44. 4:23 What's going on inside of Linear?
  45. 4:24 Tell us.
  46. 4:25 Well, yes and no.
  47. 4:26 We still think about every single feature that we put out.
  48. 4:31 We don't go down the route of just trying our prototypes.
  49. 4:34 We want to maintain that design angle that we have and think about the user experience.
  50. 4:40 Still say no to a lot of custom requests.

Chapters

  1. 0:00 Introduction
  2. 0:36 The danger of shipping features too quickly with AI
  3. 3:52 How Linear approaches feature requests and development
  4. 6:43 Thoughts on Anthropic's Claude Code
  5. 7:59 The challenge of measuring software quality
  6. 11:57 Quality Wednesdays at Linear
  7. 16:24 The zero bug policy explained
  8. 19:44 AI agents and the lack of human "taste" in design
  9. 22:21 Building a culture of product-focused engineering
  10. 26:23 The future role of software engineers as "product engineers"
  11. 27:56 Closing advice for aspiring product engineers

Open at this second