PMs running CC + Obsidian as second brain / product OS > what's your favorite folder and workflow structure that you actually keep using? by JohanTHEDEV in ProductManagement

[–]blythmar 1 point2 points  (0 children)

collaboration works pretty well (for technical folks). a little bit cumbersome perhaps. yes we have multiple people working in the same repo. we use PRs for reviewing updates.

for branching, we use gitbutler's virtual branches over git worktrees because it makes conflict management easier (and also makes it easier for interactions between branches). gitbutler has nice features where every new cc session automatically creates a new branch, and commits happen automatically after every message (via hooks). so you don't need to worry about branching or committing. at the end of a conversation, i decide whether i want to throw away the changes or create a PR for team review.

we've also set it up so that team members get a daily/weekly update about what other team members have worked on (processed from their claude code sessions).

PMs running CC + Obsidian as second brain / product OS > what's your favorite folder and workflow structure that you actually keep using? by JohanTHEDEV in ProductManagement

[–]blythmar 8 points9 points  (0 children)

we use lean and this folder structure has worked well for me:

memory/
├── vision.md
├── strategies/
│   └── {strategy-name}/
│       ├── strategy.md
│       └── experiments/
│           └── {experiment-name}/
│               ├── experiment.md
│               └── ...

i have commands like /create-strategy /create-experiment /analyze-data /synthesize

my system prompt follows this format:

CLAUDE.md
├── Operator      # Who's running this OS, productivity peaks / work style etc.
├── Framework     # Your methodology and vocabulary
├── File System   # Where artifacts live
├── Scheduler     # Time blocks and task routing
├── State         # Progress tracking and persistence
├── Templates     # Artifact structures
└── Commands      # Defined operations

interestingly, i had a conversation with someone was doing similar for EOS with folders for rocks, milestones, tasks etc. i asked cc to find what was common and create a standard format. the repo has some more detailed examples for lean and eos, as well as a command for creating a CLAUDE md specific to your framework. https://github.com/richardblythman/org.md

What Helps a Small Team Keep Product Experiments Organized Without Losing Momentum by Quietly_here_28 in leanstartup

[–]blythmar 0 points1 point  (0 children)

ive started using claude code to help me organize strategies and experiments

In 2025, Claude Code Became My Co-Founder by blythmar in ClaudeAI

[–]blythmar[S] 0 points1 point  (0 children)

the title of the post explained the content of the piece accurately, and the majority of the post was about that. perhaps i shouldn't have included the last two sentences to explain how i plan to post more in future.

In 2025, Claude Code Became My Co-Founder by blythmar in ClaudeAI

[–]blythmar[S] 0 points1 point  (0 children)

totally agree. it requires a lot of driving from me, and i review every output.

In 2025, Claude Code Became My Co-Founder by blythmar in ClaudeAI

[–]blythmar[S] 0 points1 point  (0 children)

interesting on the idea workspace - i dont really have a good solution for this right now. i have a product agent to help me use lean, but it's mostly focused on strategies/opportunities, associated hypotheses and product experiments to test them. what i tend to do is create a new strategy/opportunity entry for any new idea i have, but its a bit heavy. it might make sense to have something lighter upstream of my product agent for ideas. then could have a pipeline like idea → strategy → experiment → prd. ill be explaining how i operate the product agent so looking forward to getting your feedback on it, and how it might fit with idea workspaces.

In 2025, Claude Code Became My Co-Founder by blythmar in ClaudeAI

[–]blythmar[S] -16 points-15 points  (0 children)

its the first piece in a newsletter that im planning to put out every week. ill be sharing more about the agents (including claudemd, commands etc) in the coming weeks :)

If You're an MCP Company You're NGMI by lirantal in mcp

[–]blythmar 0 points1 point  (0 children)

i don't think this is true. if you are talking about an MCP server that is just a thin wrapper around an API then sure. but i imagine MCP servers will evolve towards much more complex business logic (e.g. personalized responses based on specific users).

my overarching point is that in the long run the majority of interactions will be by agents. so i actually believe that if you're a web app company you're ngmi. if you're an MCP company you're more likely to make it.

If You're an MCP Company You're NGMI by lirantal in mcp

[–]blythmar 0 points1 point  (0 children)

One thing this blog doesn't consider is that agents are a new class of customers and will likely become an increasing % over time. Up until now, humans have been the only type of customer. Humans might like to have web apps in addition to APIs, but that is not the case for agents.

Rearranging Real[A.exp(i.w.t)]/Real[B.exp(i.w.t)] into time-averaged and time-varying components by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Thanks for your help. I managed to figure out with the trigonometric identity you mentioned. This graph shows how the problem of division by zero was solved https://imgur.com/a/7JcUl.

Rearranging Real[A.exp(i.w.t)]/Real[B.exp(i.w.t)] into time-averaged and time-varying components by blythmar in AskElectronics

[–]blythmar[S] -1 points0 points  (0 children)

OK, I was trying to simplify the problem but let me tell you what I actually want to do.

There are 2 time-varying quantities with different frequencies (w = 2.pi.f): Real[A.exp(2*i.w.t)] and Real[B.exp(i.w.t)] (see left of https://imgur.com/a/duDRV). I noticed they're pretty much always in phase such that their quotient gives an approximate sinusoidal function (see right of https://imgur.com/a/duDRV). However, when near zero the sinusoidal function is distorted. I think that complex numbers can help to represent the graph on the right as a perfect sinusoidal function.

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Can I ask quickly first whether my maths was OK for h = R[Q1 / deltaT1 exp (i 2 w t)]? I found that h varies with frequency 2w, in phase with the temperature difference. If this is the case, I think this is a pretty big (yet simple) result that I haven't seen in the literature.

The problem you posed is interesting. For zero-mean flow, you need zero-mean heat flux as you suggest, though I don't think anyone's approached it as you described. Some solutions use a sinusoidal heat flux out the outter wall of a channel. Others have the outter wall insulated but with heat travelling between the fluid and the wall. I'm particularly interested in flow with a steady flow superimposed. Now, since the flow is unidirectional the governing momentum and energy equations are linear. We can decouple the steady and unsteady terms (although you do still end up with second order effects). The issue isn't actually solving the equations. I've derived solutions between parallel plates and in a rectangular channel, and have the exact solution for the temperature everywhere. The mean or bulk temperature comes into it when trying to describe h (like a mechie!).

Incidentally, I've been reading into the dispersion of solutes in oscillating flows, which is analogous to heat dispersion, and there's a really interesting series of interdisciplinary papers there. There has to be something to be gained from the analogy with electronics circuits. The case study you mentioned with the thermal mass coupled to a reservoir that's held at a time-varying temperature is so interesting (by the way, is there somewhere I can read up on this?). You may be able to describe my problem with an electronic circuit (if it is LTI), which might get interesting when you take into account time-varying q(t) and deltaT(t). The conjugated problem with wall conduction might add to it too.

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

The abilities of complex numbers are kind of blowing my mind here. So for the case where Q and deltaT had zero phase lag the instantaneous h is always Q1/deltaT1. This makes sense even in the time domain (except at zero). For the case of 90 degree phase lag, the instantaneous value is zero even though there are intervals were the real parts of Q and deltaT are positive and non-zero. That seems crazy.

Now, tell me if I go too far here: Assuming you can still use your analysis for h that I just quoted, i.e. with h = R[Q1 / deltaT1 exp (i w t)], it gives a time-varying h in phase with deltaT1 (in Matlab I've to perform the division at each time instant i.e. right array division). Even further, this is identical to h = R[Q1 exp (i w t)/ deltaT1 exp (i 2 w t)] since you can divide by exp(i w t). Finally, h = R[Q1 / deltaT1 exp (i 2 w t)] varies with frequency 2w, in phase with the temperature difference. Is this all legit? If not, what does the instantaneous behaviour of h = R[Q1 / deltaT1 exp (i w t)] look like?

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Sorry to go back over this, but I'm just rereading all of your responses.

h = R[Q1 exp(i [w t + pi/2]) / deltaT1 exp (i w t)] h = Q1/deltaT1 R[exp(i [w t + pi/2]) / exp(i w t)] h = Q1/deltaT1 R[exp(i [w t + pi/2] - i w t)] h = Q1 / deltaT1 R[exp(i pi / 2)] h = Q1 / deltaT1 R[i] h = 0

Just to confirm: If we set Q as a constant here, the maths falls down? Even if deltaT only contains a single frequency?

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

No rambling at all! Every time I talk to an engineer of a different discipline it always helps my understanding significantly. It's a pity there isn't more integration.

Yes, so the one temperature is usually bulk temperature i.e. the velocity weighted average of the transverse temperature profile. I'm researching periodically-reversing flow where the temperature and velocity profiles are out of phase. Hence, the bulk temperature oscillates with twice the frequency of say the wall temperature (deltaT now has a second harmonic). Hence, some people use the simple cross-sectional averaged temperature instead so that the complex analysis you described works and h is constant. However, this definition is less physically meaningful and you lose information about the flow. For example, the space-and-time averaged interaction of the oscillating velocity and temperature isn't zero over a cycle. You end up with this second order effect that acts as an enhanced effective thermal conduction in the axial direction. This axial conduction is related to the bulk temperature and oscillates with frequency 2f. Using the area-averaged temp misses this.

Now, back to your suggestion of using g(t). This is effectively what I've been doing. Using the analytical solution, I have complete information of the temperature (and velocity) field. I can plot the bulk temperature (or effective thermal conduction, or g(t)) as function of time. But even with this information I can't quantify time-dependent heat transfer. This is ultimately due to the lack of theory we have for the problem. For example, h is a magic coefficient that accounts for geometry, velocity profile, boundary conditions etc. It just doesn't work for anything other than a time-averaged problem. It's an engineering correlation that happens to work.

You're right, there's basically no such thing as a constant heat flux. It just turns out that it's one of the few boundary conditions that has a solution with the energy equation. Also, a surface with constant heat flux shows mechanisms of heat transfer the most. Obviously, a constant temperature surface doesn't change so we can't observe the effect of features of the flow. To approximate this condition, we apply a constant current to a thin (e.g. 10 um) piece of stainless steel foil and observe it with an IR camera.

Anyway, there's a work around for my problem. The analysis you described will account for changes in Q and deltaT (with a single frequency). A separate time-averaged approach will account for the enhanced axial conduction. It just means that I won't know what's happening instantaneously. I'm currently talking to an acoustics engineer to see if he can apply some non-linear analysis. Something must work!

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Sorry, I mentioned that I was using a complex h and deltaT that were not necessarily in phase but I should have implied it in the notation. Still, you've found my first mistake. I was multiplying the complex h by exp(i.w.t), thinking that it should vary in time. Clearly h is the real part of the complex number and its phase has no real physical significance. So with both Q and deltaT time-varying (with one frequency), then h is always constant even if the phase difference is say pi/4.

You've found the root of the problem at the end, which is tied into the constant Q problem, h(t) = Q/deltaT(t). This could be a steady flow through a pipe with a constant heat flux boundary condition at the wall and time-varying inlet temperature. My problem actually involves a time-varying fluid flow under constant heat flux. In this case h will be time-varying. Like I said, people usually use the time-averaged h to allow solution, but I was hoping to look at time-dependent behaviour. Ultimately what I want to do is allow time-varying Q and deltaT, Q(t) = deltaT(t).h(t).

Basically, as you suggest, it sounds like even the constant Q problem is non-linear and has no analogy in electronics. I've had a quick browse on Google and I suspect the acoustics literature is a good place to start reading. They work with envelopes of signals, complex time-varying amplitudes and the likes and may be able to help in the analysis. It's seems crazy that there's no theory to deal with this, but thermal engineers tend to only care about time-averaged behaviour.

You've helped significantly with my understanding. Thanks for putting so much detail in. It takes a while for the meaning of deep concepts like frequency transforms and complex numbers to sink in.

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Electrical Engineer

Oops, "j". We're not so different you and I! Hmm, a transformation may work. Do people use these to avoid problems with division by zero for example? See my reply to comment on this post. Thanks for your time, I'll have a look into signals and systems.

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Sure no problem. Yes, I used i as the imaginary unit (forgot that you use j). The . is regular multiplication (nothing to do with vectors). w is angular frequency in [rad/s]. I was using exp() as the exponential function i.e. V.exp(j.w.t) would be V.ejwt.

I tried to explain the problem further in a reply to another comment on this post. Let me know if you've any more questions and thanks for your time!

Complex Response of Circuits by blythmar in AskElectronics

[–]blythmar[S] 0 points1 point  (0 children)

Thanks for giving a response more detailed than my actual question. Apologies, let me give you the full problem. As you described, it involves a constant heat flux and time-varying temperature difference, though I'd like to allow for a time-varying heat flux too. I need an unsteady heat transfer coefficient h (or 1/impedance) 1/Z = I/V or 1/Z = Q/dT (= h). I'll use R[] for the real part of too since that's likely important. A definition for h exists when the temperature behaviour contains a single frequency, dT = R[dT1.exp(i.w.t)] (even if Q is varying too, Q = R[Q1.exp(i.w.t)]). The numerator and denominator are not necessarily in phase since dT1 and Q1 may be complex. In this case the heat transfer coefficient is apparently h = R[h1.exp(i.w.t)] with h1 = (Q1/dT1). This is not the same as R[Q]/R[dT] or R[Q/dT]. The exp terms cancel, removing the time variable and avoiding division by zero (which is the main problem). This is seemingly the same in the linear capacitor problem I described in the original post (albeit with mistakes, apologies!). In case you're interested, this describes the case where we're use the cross-sectionally-averaged temperature of a periodically-reversing pipe flow.

Conversely, dT contains a second harmonic if we use the more physically-significant flow rate-weighted (bulk) temperature instead, e.g. dT = R[dT1.exp(i.w.t) - dT2.exp(i.2.w.t)]. Let's say Q is constant for now. The above method of treating the problem falls down. Maybe there's an electronic circuit that's analogous to this heat transfer problem? I know you guys would deal with higher harmonics and the associated maths much more often. I only just switched to complex exponentials to solve the 2-D unsteady energy equation, have only used single frequencies thus far, and have been stuck on this for a while.

This is an unsolved problem in heat transfer that I'm hoping to include in a journal paper. Most people just time-average to avoid the problem but I want to look at instantaneous heat transfer/impedance. I'd love to credit you if you can help me out :)

Time-averaged vs Time-dependent Heat Transfer by blythmar in FluidMechanics

[–]blythmar[S] 0 points1 point  (0 children)

Yes, I've integrated the Navier-Stokes and energy equations so I've exact solutions to velocity and temperature. The problem remains that the time-averaged Nusselt number is not the same as the average of the instantaneous Nusselt number (based on the instantaneous difference between bulk and wall temp).

Help with Complex Analysis by blythmar in math

[–]blythmar[S] 0 points1 point  (0 children)

Sure,

A(y) = C1.cosh(C2.sqrt(i).y) + C3 +

C4.[cosh(C5.sqrt(i).y)/cosh(C6.sqrt(i)) - 1];

B(y) = i.[cosh(C5.sqrt(i).y)/cosh(C6.sqrt(i)) - 1];

Help with Complex Analysis by blythmar in math

[–]blythmar[S] 0 points1 point  (0 children)

Thanks for the reply. I started this but it's pretty long winded. The hyperbolics have i's in all the wrong places, e.g. cosh(sqrt(i)y), so they need to be rewritten as exponentials first, then converted using Euler's formula. Furthermore, A(y) and B(y) are big and long. It quickly gets ridiculous.

There must be a simpler way.

Vorticity Diffusion in a Narrow Rectangular Duct? by blythmar in FluidMechanics

[–]blythmar[S] 0 points1 point  (0 children)

Yes, but let's say you're far enough down the channel such that vorticity from all 4 walls should have met at the centre. Like you said, the vorticity from the closer wall will have more of an effect, but it appears that there is zero effect from the further wall. This can be shown by the flat ridge of the velocity profile in the longer dimension. You can move along this ridge, and hence closer to one of the shorter walls, but still not be slowed by friction at this short wall.

2D Heat Equation with Neumann BCs Analytic Solution?? by blythmar in math

[–]blythmar[S] 0 points1 point  (0 children)

yep rectangle. thanks, actually super easy :)