@forwardimpact/map 0.11.1 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +1 -1
  2. package/bin/fit-map.js +91 -34
  3. package/package.json +14 -4
  4. package/schema/json/capability.schema.json +33 -0
  5. package/schema/json/discipline.schema.json +2 -6
  6. package/schema/rdf/capability.ttl +48 -0
  7. package/schema/rdf/discipline.ttl +6 -19
  8. package/src/index-generator.js +67 -38
  9. package/src/index.js +10 -25
  10. package/src/loader.js +407 -559
  11. package/src/schema-validation.js +327 -307
  12. package/src/validation.js +54 -0
  13. package/examples/behaviours/_index.yaml +0 -8
  14. package/examples/behaviours/outcome_ownership.yaml +0 -43
  15. package/examples/behaviours/polymathic_knowledge.yaml +0 -41
  16. package/examples/behaviours/precise_communication.yaml +0 -39
  17. package/examples/behaviours/relentless_curiosity.yaml +0 -37
  18. package/examples/behaviours/systems_thinking.yaml +0 -40
  19. package/examples/capabilities/_index.yaml +0 -8
  20. package/examples/capabilities/business.yaml +0 -205
  21. package/examples/capabilities/delivery.yaml +0 -1001
  22. package/examples/capabilities/people.yaml +0 -68
  23. package/examples/capabilities/reliability.yaml +0 -349
  24. package/examples/capabilities/scale.yaml +0 -1672
  25. package/examples/copilot-setup-steps.yaml +0 -25
  26. package/examples/devcontainer.yaml +0 -21
  27. package/examples/disciplines/_index.yaml +0 -6
  28. package/examples/disciplines/data_engineering.yaml +0 -68
  29. package/examples/disciplines/engineering_management.yaml +0 -61
  30. package/examples/disciplines/software_engineering.yaml +0 -68
  31. package/examples/drivers.yaml +0 -202
  32. package/examples/framework.yaml +0 -73
  33. package/examples/levels.yaml +0 -115
  34. package/examples/questions/behaviours/outcome_ownership.yaml +0 -228
  35. package/examples/questions/behaviours/polymathic_knowledge.yaml +0 -275
  36. package/examples/questions/behaviours/precise_communication.yaml +0 -248
  37. package/examples/questions/behaviours/relentless_curiosity.yaml +0 -248
  38. package/examples/questions/behaviours/systems_thinking.yaml +0 -238
  39. package/examples/questions/capabilities/business.yaml +0 -107
  40. package/examples/questions/capabilities/delivery.yaml +0 -101
  41. package/examples/questions/capabilities/people.yaml +0 -106
  42. package/examples/questions/capabilities/reliability.yaml +0 -105
  43. package/examples/questions/capabilities/scale.yaml +0 -104
  44. package/examples/questions/skills/architecture_design.yaml +0 -115
  45. package/examples/questions/skills/cloud_platforms.yaml +0 -105
  46. package/examples/questions/skills/code_quality.yaml +0 -162
  47. package/examples/questions/skills/data_modeling.yaml +0 -107
  48. package/examples/questions/skills/devops.yaml +0 -111
  49. package/examples/questions/skills/full_stack_development.yaml +0 -118
  50. package/examples/questions/skills/sre_practices.yaml +0 -113
  51. package/examples/questions/skills/stakeholder_management.yaml +0 -116
  52. package/examples/questions/skills/team_collaboration.yaml +0 -106
  53. package/examples/questions/skills/technical_writing.yaml +0 -110
  54. package/examples/self-assessments.yaml +0 -64
  55. package/examples/stages.yaml +0 -191
  56. package/examples/tracks/_index.yaml +0 -5
  57. package/examples/tracks/platform.yaml +0 -47
  58. package/examples/tracks/sre.yaml +0 -46
  59. package/examples/vscode-settings.yaml +0 -21
@@ -1,228 +0,0 @@
1
- # yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/behaviour-questions.schema.json
2
-
3
- professionalQuestions:
4
- emerging:
5
- - id: own_pro_emerg_1
6
- text:
7
- A feature you built last week is causing intermittent errors in
8
- production. Your tech lead is in a meeting and unavailable for an hour.
9
- context:
10
- The errors affect about 5% of users and the on-call engineer has pinged
11
- the team channel. You have access to logs and the deployment pipeline.
12
- The feature was built using AI-generated code that you reviewed before
13
- merging.
14
- simulationPrompts:
15
- - Walk me through your first steps when you see the alert
16
- - How would you decide whether to roll back or investigate further?
17
- - Who would you communicate with and what would you say?
18
- - How would you document what happened for the team?
19
- lookingFor:
20
- - Takes immediate responsibility rather than waiting for direction
21
- - Shows willingness to act within their capability
22
- - Communicates status proactively even without being asked
23
- - Understands the feature serves a business purpose beyond code
24
- expectedDurationMinutes: 20
25
-
26
- developing:
27
- - id: own_pro_dev_1
28
- text:
29
- You shipped a feature using AI-generated code that passed all tests, but
30
- a stakeholder reports it behaves differently than specified.
31
- context:
32
- The stakeholder is frustrated because they demoed the feature to a
33
- client and it didn't work as expected. The AI tool generated a plausible
34
- but subtly wrong implementation that your tests didn't catch.
35
- simulationPrompts:
36
- - How do you respond to the stakeholder's frustration?
37
- - What do you do to understand the gap between spec and implementation?
38
- - How do you decide between a quick patch and a proper fix?
39
- - What would you change about your review process going forward?
40
- lookingFor:
41
- - Takes ownership of the gap rather than blaming the AI tool
42
- - Reviews AI-generated code critically against the specification
43
- - Makes pragmatic trade-offs between speed and correctness
44
- - Considers how to prevent similar gaps in future
45
- expectedDurationMinutes: 20
46
-
47
- practicing:
48
- - id: own_pro_pract_1
49
- text:
50
- A key integration your team owns is blocking a partner team's quarterly
51
- release. The fix requires accepting significant technical debt.
52
- context:
53
- The partner team's release is worth £2M in annual revenue. A proper fix
54
- would take 3 weeks; a pragmatic workaround takes 3 days but leaves known
55
- limitations. You own the stakeholder relationship with the partner
56
- team's lead.
57
- simulationPrompts:
58
- - How do you evaluate the trade-off between technical debt and business
59
- value?
60
- - Walk me through the conversation you'd have with the partner team lead
61
- - How do you ensure the technical debt is tracked and eventually
62
- addressed?
63
- - How do you communicate the decision and its consequences to your team?
64
- lookingFor:
65
- - Owns the end-to-end business outcome, not just the code
66
- - Accepts technical debt intentionally with clear reasoning
67
- - Manages the stakeholder relationship with transparency
68
- - Balances delivery speed with long-term quality
69
- expectedDurationMinutes: 20
70
-
71
- role_modeling:
72
- - id: own_pro_role_1
73
- text:
74
- Two teams in your function disagree about who owns a cross-cutting
75
- reliability issue. Incidents are recurring and both teams blame the
76
- other.
77
- context:
78
- The issue has caused 3 incidents this month, each impacting customer
79
- experience. Neither team has full visibility into the other's service.
80
- You are a senior IC with credibility with both teams. Leadership is
81
- starting to notice.
82
- simulationPrompts:
83
- - How do you approach the situation without formal authority?
84
- - What would you do to establish clear ownership boundaries?
85
- - How do you shift the conversation from blame to accountability?
86
- - What systemic changes would you propose to prevent this pattern?
87
- lookingFor:
88
- - Drives accountability culture focused on outcomes not blame
89
- - Takes ownership of the problem without formal responsibility
90
- - Makes decisions without needing to escalate for permission
91
- - Establishes verification rigor for cross-team boundaries
92
- expectedDurationMinutes: 20
93
-
94
- exemplifying:
95
- - id: own_pro_exemp_1
96
- text:
97
- The organisation is adopting AI code generation at scale, but there is
98
- no accountability framework for AI-generated code quality and outcomes.
99
- context:
100
- Several teams have shipped AI-generated features with defects not caught
101
- in review. Leadership wants velocity but also accountability. You have
102
- been asked to define the organizational approach.
103
- simulationPrompts:
104
- - How do you define accountability standards for AI-generated code?
105
- - How do you balance velocity gains from AI with outcome ownership?
106
- - What organizational structures would you put in place?
107
- - How would you measure success of the accountability framework?
108
- lookingFor:
109
- - Defines organizational accountability standards for the AI era
110
- - Shapes practices that scale beyond individual team behaviour
111
- - Sponsors initiatives with full outcome accountability
112
- - Takes an approach that could influence industry practices
113
- expectedDurationMinutes: 20
114
- followUps:
115
- - How would you handle a team that resists the framework?
116
-
117
- managementQuestions:
118
- emerging:
119
- - id: own_mgmt_emerg_1
120
- text:
121
- A team member's task is overdue and they haven't raised it. You discover
122
- this during standup where they say everything is "on track."
123
- context:
124
- The task was due yesterday and blocks another team member's work. The
125
- team member is relatively new and you suspect they may be struggling but
126
- don't want to appear incompetent. The sprint goal is at risk.
127
- simulationPrompts:
128
- - How do you address this in the moment without embarrassing them?
129
- - What conversation do you have with them privately afterwards?
130
- - How do you ensure the blocking dependency is resolved?
131
- - What do you put in place to catch this earlier next time?
132
- lookingFor:
133
- - Ensures follow-through on delegated tasks
134
- - Creates psychological safety while maintaining accountability
135
- - Addresses both the immediate blocker and the underlying pattern
136
- - Shows awareness of team accountability dynamics
137
- expectedDurationMinutes: 20
138
-
139
- developing:
140
- - id: own_mgmt_dev_1
141
- text:
142
- A team member shipped code that caused a production incident. During the
143
- post-mortem, other team members want to assign blame.
144
- context:
145
- The incident affected 200 users for 45 minutes. The code was reviewed
146
- and approved by another team member before merge. The author is junior
147
- and clearly upset. Your team has no established incident ownership
148
- culture.
149
- simulationPrompts:
150
- - How do you run the post-mortem to keep it constructive?
151
- - How do you coach the team member privately afterwards?
152
- - What do you say to the team about shared accountability?
153
- - How do you start building an ownership culture from this moment?
154
- lookingFor:
155
- - Creates safe space for ownership while addressing the incident
156
- - Coaches individual accountability constructively
157
- - Models shared ownership rather than individual blame
158
- - Begins establishing team accountability patterns
159
- expectedDurationMinutes: 20
160
-
161
- practicing:
162
- - id: own_mgmt_pract_1
163
- text:
164
- Your team consistently treats operational issues as "someone else's
165
- problem" once features ship. The platform team is overwhelmed.
166
- context:
167
- Your team shipped 12 features this quarter with strong velocity, but
168
- operational tickets have doubled. The platform team lead has escalated
169
- to your manager. Your team sees themselves as "builders, not operators."
170
- simulationPrompts:
171
- - How do you shift the team from feature delivery to outcome ownership?
172
- - What structural changes embed operational ownership?
173
- - How do you have the conversation with the platform team lead?
174
- - How do you measure and recognize end-to-end ownership?
175
- lookingFor:
176
- - Structures team around end-to-end ownership, not just features
177
- - Balances autonomy with accountability for operational outcomes
178
- - Builds clear ownership expectations with concrete mechanisms
179
- - Takes responsibility for the team culture gap
180
- expectedDurationMinutes: 20
181
-
182
- role_modeling:
183
- - id: own_mgmt_role_1
184
- text:
185
- A project you championed has missed its business targets after 6 months.
186
- Technology works but adoption is far lower than projected.
187
- context:
188
- You estimated £500K in annual savings but actual savings are £120K.
189
- Technical delivery was on time and on budget. The adoption gap is due to
190
- change management issues outside your initial scope. Your peers are
191
- distancing themselves from the project.
192
- simulationPrompts:
193
- - How do you own this outcome publicly with leadership?
194
- - What do you do about the adoption gap specifically?
195
- - How do you model accountability when the outcome isn't what you
196
- projected?
197
- - What would you do differently if starting again?
198
- lookingFor:
199
- - Models personal accountability publicly, including for indirect
200
- outcomes
201
- - Owns the business outcome, not just the technical delivery
202
- - Takes action to close the gap rather than accepting current state
203
- - Shows transparency about lessons learned
204
- expectedDurationMinutes: 20
205
-
206
- exemplifying:
207
- - id: own_mgmt_exemp_1
208
- text:
209
- You need to establish ownership expectations across a function where
210
- teams have very different accountability cultures.
211
- context:
212
- You lead a function of 8 teams (60+ engineers). Three teams have strong
213
- ownership cultures, three are inconsistent, and two actively avoid
214
- accountability. Recent reorgs mixed people from different cultures and
215
- cross-team incidents are increasing.
216
- simulationPrompts:
217
- - How do you assess ownership maturity across teams?
218
- - What organizational standards would you establish?
219
- - How do you bring lower-performing teams up without bureaucracy?
220
- - How do you handle managers who resist accountability expectations?
221
- lookingFor:
222
- - Establishes organizational accountability standards
223
- - Takes a systemic approach rather than team-by-team fixing
224
- - Balances accountability with psychological safety at scale
225
- - Creates sustainable culture that survives personnel changes
226
- expectedDurationMinutes: 20
227
- followUps:
228
- - How would you measure the impact of the ownership culture change?
@@ -1,275 +0,0 @@
1
- # yaml-language-server: $schema=https://www.forwardimpact.team/schema/json/behaviour-questions.schema.json
2
-
3
- professionalQuestions:
4
- emerging:
5
- - id: poly_pro_emerg_1
6
- text:
7
- You're building a feature for a pharmaceutical client's clinical trial
8
- management system. The PM hands you a spec full of domain terms you
9
- don't understand.
10
- context:
11
- The feature tracks "adverse event reporting" with specific regulatory
12
- timelines. The spec references ICH E2B guidelines, MedDRA coding, and
13
- CIOMS forms. Your team has no pharma domain experts. The client expects
14
- the first deliverable in 2 weeks and will review your data model.
15
- simulationPrompts:
16
- - How would you approach learning enough about this domain to build
17
- effectively?
18
- - What's the difference between blindly implementing the spec vs
19
- understanding the domain?
20
- - How would you know if you've learned enough to start building?
21
- - What questions would you ask the client in your first meeting?
22
- lookingFor:
23
- - Recognizes that problems benefit from cross-disciplinary understanding
24
- - Shows interest in domains beyond immediate technical requirements
25
- - Asks questions that reveal genuine curiosity about the domain
26
- - Willing to invest in learning unfamiliar territory
27
- expectedDurationMinutes: 20
28
-
29
- developing:
30
- - id: poly_pro_dev_1
31
- text:
32
- Your team is building a recommendation engine. You have strong backend
33
- skills but the UX designer keeps talking about cognitive load and
34
- decision fatigue. You don't understand their concerns.
35
- context:
36
- The recommendation engine shows 50 product suggestions. The UX designer
37
- insists this will paralyze users, citing the "paradox of choice." The PM
38
- sides with engineering — more recommendations means more sales. The
39
- designer is frustrated that nobody understands their perspective.
40
- simulationPrompts:
41
- - How would you bridge the gap between the engineering and design
42
- perspectives?
43
- - What would you do to understand the UX designer's concerns more
44
- deeply?
45
- - How would knowledge of behavioral psychology change your technical
46
- approach?
47
- - How do you apply insights from one domain to inform decisions in
48
- another?
49
- lookingFor:
50
- - Applies knowledge from one domain to inform decisions in another
51
- - Studies adjacent fields to broaden perspective
52
- - Begins learning the language of other disciplines
53
- - Sees connections between technical implementation and human behavior
54
- expectedDurationMinutes: 20
55
-
56
- practicing:
57
- - id: poly_pro_pract_1
58
- text:
59
- Your company is deciding between building vs buying a supply chain
60
- optimization tool. Engineering says build, finance says buy, operations
61
- says neither option fits their workflow.
62
- context:
63
- The build option would take 6 months and give full customization. The
64
- buy option costs £200K/year but is available immediately. Operations has
65
- unique workflows around cold chain management for biologics that neither
66
- option handles well. You've been asked to lead the evaluation because
67
- you understand both the technical and business sides.
68
- simulationPrompts:
69
- - How do you evaluate this spanning engineering, finance, and operations
70
- perspectives?
71
- - How do you speak the language of each stakeholder group?
72
- - What insights from the operations domain would change the technical
73
- approach?
74
- - How do you synthesize cross-disciplinary concerns into a coherent
75
- recommendation?
76
- lookingFor:
77
- - Bridges gaps between engineering, business, and domain expertise
78
- - Rapidly immerses in new domains to make informed decisions
79
- - Speaks the language of different stakeholder groups
80
- - Makes better decisions by understanding broader context
81
- expectedDurationMinutes: 20
82
-
83
- role_modeling:
84
- - id: poly_pro_role_1
85
- text:
86
- Your engineering team builds great software but consistently
87
- misunderstands the commercial context. Features are technically
88
- excellent but miss what customers actually need.
89
- context:
90
- In the last year, 3 features were technically impressive but
91
- commercially unsuccessful. Engineers don't attend customer calls or read
92
- commercial reports. The sales team has stopped asking engineering for
93
- input on product direction. You see a growing disconnect between what
94
- engineers think is important and what drives business value.
95
- simulationPrompts:
96
- - How do you get engineers to think like business insiders?
97
- - What cross-disciplinary practices would you champion?
98
- - How do you translate specialized engineering knowledge into business
99
- language?
100
- - How do you create holistic solutions spanning technical and business
101
- domains?
102
- lookingFor:
103
- - Champions cross-disciplinary learning across the function
104
- - Creates holistic solutions spanning technical and business domains
105
- - Translates specialized knowledge into accessible explanations
106
- - Thinks like a business insider, not just an engineer
107
- expectedDurationMinutes: 20
108
-
109
- exemplifying:
110
- - id: poly_pro_exemp_1
111
- text:
112
- Your organization wants to create a new role — "Technical Domain Expert"
113
- — that bridges engineering and the pharmaceutical business. Nobody
114
- agrees on what this role should look like.
115
- context:
116
- The company builds software for pharma R&D. Engineers lack domain
117
- knowledge; domain experts lack technical depth. Projects routinely fail
118
- at the intersection. The CEO wants engineers who can "think like
119
- scientists." You've been asked to define the role, the hiring criteria,
120
- and the development path.
121
- simulationPrompts:
122
- - How would you define this role drawing from your polymathic
123
- experience?
124
- - How do you build a development path that creates genuine breadth, not
125
- surface knowledge?
126
- - How would you influence industry thinking about cross-disciplinary
127
- engineering roles?
128
- - What organizational structures would you create to sustain polymathic
129
- growth?
130
- lookingFor:
131
- - Shapes organizational learning strategy across disciplines
132
- - Advises leadership on cross-functional strategy
133
- - Influences industry practices around polymathic engineering
134
- - Recognized as a thought leader bridging technology and business
135
- expectedDurationMinutes: 20
136
- followUps:
137
- - How would you assess whether someone is genuinely polymathic vs
138
- superficially broad?
139
-
140
- managementQuestions:
141
- emerging:
142
- - id: poly_mgmt_emerg_1
143
- text:
144
- A team member wants to attend a 2-day workshop on pharmaceutical
145
- regulatory processes. It's not directly related to their current project
146
- work.
147
- context:
148
- The workshop covers FDA submission processes and GxP compliance. Your
149
- team builds internal tools, not regulatory software. The team member
150
- says "I want to understand what our company actually does." The workshop
151
- conflicts with a sprint commitment. Your manager values predictable
152
- delivery.
153
- simulationPrompts:
154
- - How do you evaluate the value of cross-domain learning for this team
155
- member?
156
- - How would you justify this to your manager?
157
- - What would make you say yes vs no?
158
- - How do you create a culture where this kind of exploration is
159
- encouraged?
160
- lookingFor:
161
- - Supports cross-disciplinary learning even when not immediately
162
- relevant
163
- - Recognizes the long-term value of domain breadth
164
- - Encourages team members to explore beyond their specialization
165
- - Balances learning investment with delivery commitments
166
- expectedDurationMinutes: 20
167
-
168
- developing:
169
- - id: poly_mgmt_dev_1
170
- text:
171
- Your team of infrastructure engineers struggles to understand why the
172
- product team makes certain decisions. They build technically sound
173
- solutions that don't align with product goals.
174
- context:
175
- Recent example — the team over-engineered a caching layer for a feature
176
- that product planned to deprecate in 3 months. Engineers didn't know
177
- about the deprecation because they don't attend product planning.
178
- They've asked "why should we care about product strategy?"
179
- simulationPrompts:
180
- - How would you create opportunities for your team to learn from the
181
- product domain?
182
- - How do you make cross-domain knowledge feel valuable, not like extra
183
- work?
184
- - What specific practices would you introduce?
185
- - How do you handle engineers who resist learning beyond their technical
186
- domain?
187
- lookingFor:
188
- - Creates structured cross-disciplinary learning opportunities
189
- - Makes cross-domain knowledge practically relevant
190
- - Builds bridges between engineering and other functions
191
- - Doesn't force breadth but makes it naturally valuable
192
- expectedDurationMinutes: 20
193
-
194
- practicing:
195
- - id: poly_mgmt_pract_1
196
- text:
197
- You manage a team that is highly specialized — everyone is an expert in
198
- one narrow area but the system requires decisions that span multiple
199
- domains.
200
- context:
201
- Your team of 8 has deep specialists in database performance, frontend
202
- UX, API design, and security. A recent architecture decision required
203
- all four perspectives but no one could evaluate the trade-offs across
204
- domains. The decision was made by averaging opinions rather than
205
- synthesizing them. Quality is suffering at the seams between
206
- specializations.
207
- simulationPrompts:
208
- - How do you structure your team to leverage depth while building
209
- breadth?
210
- - What practices would you introduce to break specialization silos?
211
- - How do you develop T-shaped engineers from I-shaped specialists?
212
- - How do you handle the tension between deep expertise and broad
213
- understanding?
214
- lookingFor:
215
- - Structures teams to leverage diverse knowledge
216
- - Breaks down specialization silos with concrete practices
217
- - Develops engineers toward polymathic breadth
218
- - Creates environments where cross-domain synthesis happens naturally
219
- expectedDurationMinutes: 20
220
-
221
- role_modeling:
222
- - id: poly_mgmt_role_1
223
- text:
224
- Your engineering function operates in silos — backend, frontend,
225
- platform, and data teams rarely share knowledge or attend each other's
226
- reviews.
227
- context:
228
- You lead 3 teams with 20 engineers. Each team has strong internal
229
- culture but there's minimal cross-pollination. When a project requires
230
- cross-team collaboration, it takes weeks to build shared understanding.
231
- A recent project failed because the data team's model assumptions
232
- conflicted with the backend team's architecture, and nobody caught it
233
- until production.
234
- simulationPrompts:
235
- - How do you model polymathic learning as a leader?
236
- - What structures would you create for cross-team knowledge sharing?
237
- - How do you demonstrate the value of breadth to specialists who are
238
- comfortable in their silos?
239
- - How do you make cross-disciplinary collaboration a norm, not an
240
- exception?
241
- lookingFor:
242
- - Models polymathic learning visibly as a leader
243
- - Creates structures that promote cross-team knowledge
244
- - Demonstrates value of breadth beyond just efficiency gains
245
- - Builds collaborative culture across specialization boundaries
246
- expectedDurationMinutes: 20
247
-
248
- exemplifying:
249
- - id: poly_mgmt_exemp_1
250
- text:
251
- The organization wants to hire "full-stack" engineers but keeps
252
- attracting deep specialists. Meanwhile, the most impactful engineers are
253
- those with cross-domain knowledge.
254
- context:
255
- Exit interviews show that polymathic engineers leave because they feel
256
- undervalued compared to deep specialists. The promotion criteria reward
257
- depth. Hiring screens filter for specific tech skills, not cross-domain
258
- thinking. The CEO observes that competitors with broader engineering
259
- cultures ship faster.
260
- simulationPrompts:
261
- - How would you redesign hiring and promotion to value polymathic
262
- knowledge?
263
- - How do you build organizational incentives for breadth alongside
264
- depth?
265
- - How do you coach other managers to value cross-disciplinary growth?
266
- - How do you balance the need for specialization with the strategic
267
- value of breadth?
268
- lookingFor:
269
- - Shapes organizational structures to promote polymathic culture
270
- - Redesigns talent practices to value breadth
271
- - Coaches other managers on developing cross-disciplinary teams
272
- - Strategic approach to balancing depth and breadth at scale
273
- expectedDurationMinutes: 20
274
- followUps:
275
- - How would you measure the business impact of polymathic culture?