fronx

I create, make visible,
negotiate, coach, and lead.

Hi, I'm Fronx.

As a freelance technical leadership advisor and fractional CTO for startups, I offer to

  • Lead technical decision-making and execution
  • Analyze high-level business goals and translate them into technically viable strategies and architectures
  • Create agreement and alignment among leaders, engineers, designers, and other stakeholders
  • Evaluate, refine, and de-risk product ideas
  • Architect, prototype, and review competitive solutions
  • Coach and develop software engineers of all levels.

Follow and message me on LinkedIn

Experience

I enjoy making things that are beautiful and useful. That's what motivated my work at SoundCloud as well as Ableton.

What has evolved and expanded over time is my appreciation and understanding of technology, people, and organizations, which I am eager to share with others.

Over the past 18 years, I've worked in various roles:

  • As a software engineer
    I turned ambitious ideas into working systems, be it web backend, frontend or desktop
  • As a product owner
    I owned aspects of the product strategy and led teams in understanding where we're going, why, and how
  • As an engineering manager
    I introduced career levels, created and grew teams, and guided engineers in making progress

Cybird

Semantic Twitter Archive Map

After 15 years of using Twitter, I was curious: what exactly have I been talking about over the years? Were there any themes? Did they shift over time? Am I a different person now than back then? How different?

LLMs make this kind of analysis possible. Text can be mapped to math. A tweet becomes a vector.

Have I changed? Apparently so!

Data processing

The first step was to download my Twitter archive, which I did for two accounts, @fronx and @fronxer. I wrote a Python script to concatenate all the tweets that were in threads so they could be treated as semantic units.

Using OpenAI's Embeddings API, I turned each thread into a vector, a sequence of 1536 numbers that can be imagined as a point in a high-dimensional space. Any two points in that space that are close to each other are also similar in meaning.

In order to generate a map that can be displayed on a screen, I used a combination of PCA and UMAP. First I reduced the dimensionality from 1536 down to 12 — those are the named dimensions you see listed on the right side — then down to two (X and Y).

The titles for clusters and dimensions are all auto-generated by sending small samples to an LLM and specifying a title template to follow.

User interface

I made a React.JS app that gets its data from my pre-processed JSON files served via a minimal Python backend (Flask).

It renders each tweet as an SVG circle. The size of a dot visualizes the length of the text in the tweet or thread. To help the dots spread out so that they are all clearly visible, I used the anti-collision simulation provided by D3.js.

The web UI requires Chrome. It relies on hover interactions for making tweets visible, so it won't work on a touch device.

What have I learned?

After inspecting and exploring the map for a while, I saw that there was a noticeable development from the rather insular being I used to be to the much more socially connected person I am now.

Along that path, there is evidence of an intense engagement with matters of social identity and communication, not just as a means of self-expression but as a way of pointing at things that connect us.

Apart from that, a lot of my thoughts are still as "quirky" as in 2010, at least if you ask ChatGPT. And they can be hard to get into for outsiders. Many threads are about pretty abstract topics that may feel out of context to the average reader.

A different medium, video essays perhaps, might be better suited for making them accessible. (Stay tuned…)

Do you also need a map?

There is great power in making our own data visible and navigable, so much unused potential in the things we write down every day, for our personal use or for work.

Customized semantic maps are great for connecting the big picture with the details, giving you an overview and allowing you to zoom in on what matters.

Are you interested in semantic maps but are unsure if they would help in your case or you don't know how to start? I'd be excited to help.

Ping me and tell me about it

Companies ask me for help when they…

  • are stuck, don't know where to start or aren't sure if something is even possible
  • need clarity, decisions, practical execution plans, and confidence in the midst of ambiguity
  • need someone who doesn't lose track of the big picture when delving into the details that matter.
Follow or message me on LinkedIn

Fronx's Column for Tech Learners & Leaders

Let me share the techniques and insights I've discovered over the last two decades for making technical decisions confidently, learning about new technologies, and leading people in making great software.

Sign up to my newsletter.