A pivot is often just the polite word we use with investors when the first company is dead and we have decided to build another one. And that is fine. Not because failure is noble, but because luck needs exposure: every market you enter, every product you ship and every channel you test is one more surface where something unexpected can land.
Essays
My own essays, the ones newsletter subscribers get: what I test, what I keep, what I would do differently. Written to be read, not to rank.
Get ahead.
Get the best of what I test, carefully selected to save you time.
Projects

ReadyToPost
Your AI community manager: it writes and publishes your posts, then tracks the results. You approve, that's all.

Mira Ceti
What if you truly felt at home? An interior-architecture studio that rethinks apartments in Paris, with AI as backup.
Build articles
On Reddit, Claude Code lives in three subreddits: r/ClaudeCode, r/ClaudeAI and r/claude. The five threads Google ranks for this query, posted between June 2025 and March 2026, disagree on the verdict and agree on the cause: the output tracks what the person handed the tool. The failed reports share seven mistakes, and the people it works for describe a fix for each.
Base44 packages app generation with managed data, authentication and backend functions. Replit gives you a development environment and several ways to host the result, including scheduled jobs and a continuously running VM. Choose by the workload you must run and the services you can maintain; neither a chatbot interface nor a subscription price settles the comparison.
Marketing articles
The best sales email subject line says what the message contains at the stage the deal has reached. On a first contact, name the buyer's company or problem and your one ask. After a call, name the call and the next step. With a proposal, name the document, the client and the decision you need. Once the buyer has replied, answer in the same thread unless the old subject has stopped being accurate.
LinkedIn's Post Inspector, at linkedin.com/post-inspector, reads a URL the way LinkedIn's crawler does and clears the preview LinkedIn had stored for it, so your next share picks up the tags currently on the page. That is the whole job: it refreshes, it does not validate. When the preview is still wrong after you run it, the cache was never the problem. The image you shipped is.
The essentials, by email.
What works, what does not, what I would do differently. Sent when I have something useful to say.