…five years later…

I didn’t mean to disappear from here for five years.

The pull to come back has been there a while, but my obsession with continuity always gets in the way – I didn’t want to jump into any specific topic without first filling the five-year gap with at least a few placeholders.

So I’m writing a brief, vaguely chronological recap of the past five years, with links to whatever evidence I can think of, so I can start expanding in different directions from here.

Going forward, I hope to make this something like a centerline of my story – a place I can point other things back to.


Between Fall 2021 and Summer 2026 (visual log here):

  • Decided I should build a startup to design, manufacture, and deliver high-end minimalist small houses for single people who wanted to set up basecamps in the middle of nowhere. I worked on this for about a year: joined a tech accelerator, flew around the world collaborating with architects, studied global supply chains, made connections manufacturers, found potential first customers — and eventually got solidly stuck between U.S. construction red tape and the very strange labor market of construction workers.
    1stHm
    A LinkedIn post on the concept
  • Spent a year loosely based in Vegas and got back into climbing, snowboarding, and other outdoor pursuits. I drove up and down the West Coast with friends and climbing/ski partners, climbed in Red Rock, Joshua Tree, Moab, and Boulder, and stopped at nearly every ski resort from Mammoth to Banff.
    Instagram visual blog started around that time
  • Set out to construct a permanent base: a place to park all my worldly belongings and tailor to my exact taste and life needs — one bedroom, a large living space, a minimal kitchen, and an art studio with natural light. I worked with AI to search for a pre-1920 brick house with simple structure and maximum redesign possibilities, in a city with four distinct seasons + a reasonable airport + enough coffee shops. Ended up with a distressed 1892 brick duplex in St. Louis from @cheapoldhouses, which I am slowly turning into my temple.
    Some early house restoration videos, although I’m much further along now but stopped posting
  • Learned how to party in 2024. This began at Tomorrowland, my first music festival — and, somehow, my first concert of any kind. Psychedelics probably played an important role in opening up neural pathways I did not know I had. I then quickly leveled up on the party ladder: Burning Man that summer, Summit, City of Gods in NYC, Day of the Dead in Mexico, Miami Art Basel, someone’s five-day birthday party in Jamaica, plus local nightclubs in St. Louis, Miami, Vegas, Aspen, and New York.
  • Fulfilled a childhood dream of being a ski bum. I signed up to wait tables in Aspen for a season (slight lie: I was two levels below actual “waiting” and mostly filled waters). but it turned out to be an unexpectedly strange and useful experience in the anthropological sense. It helped me understand the world a little better in ways I would not have otherwise.
  • Started using AI as an infrastructure layer for everything in life: iterating on thoughts, mood, motivation, emotions, identity and old mental blocks. Over time it became an externalized reflective system – kind of a mind extension, and became quietly life-changing. I now see this and the house as the software and hardware I’m developing to finally be able to live coherently.
    Linkedin: What AI taught me about being human
  • Built that further into Psy_: an AI system made to remember, analyze, and decode a person over time. It is currently still in development, and I find the problem quite interesting: there is a classic algorithmic flavor in trying to design and optimize human-shaped data structures, build AI pipelines that remember what is actually important to people, and navigate the strange geometry of LLM memory and embedding space.
    Psy_ landing page
    LinkedIn: AI, Coherence, and the Beginning of Psy_
  • Meanwhile, I got my American citizenship, filed a happy divorce, made yearly trips to Europe and semi-regular trips to Asia (and traveled a full continuous loop around the world one year). I now see travel as a lever: something I can use deliberately to shift mental state, gather texture, and invite inspiration. Friendship, similarly, has become less about spontaneous contact and more about accumulation — a long-term investment in shared history, repeated returns – a slow compound.
  • Spent a lot of time refining taste across architecture, interiors, food, hotels, and fashion. At some point these stopped feeling like separate preferences and started to form a more coherent philosophy. I’ve been finding my own visual expression, from rooms and materials to silhouettes and textures. Current fashion obsessions: Rick Owens, Issey Miyake, The Row, Margiela, Ann Demeulemeester.

A note on mathematics:

I had been largely unable to look at math for the past decade or so. It felt like being locked out of some rooms in my brain. But I feel it’s changing a bit.

The first crack came in late 2021, when Amie Wilkinson appeared out of nowhere and asked me, at Charles Pugh’s request, to give a five-minute talk at his 80th birthday event on a construction I had done as an undergrad. I guess it planted a reminder in me that that world still existed.

In 2024, I decided to crash a topology conference at WashU, since Dave, Danny Calegari and some twenty other topologists I knew were in town here in St. Louis. I went for nostalgia, but found a lot more than that: I could visualize the constructions in talks, recall definitions I’d heard once fifteen years ago, and feel alive when talking math with Danny over coffee – that particular blend of excitement only math carries came right back, as if no time had passed.

Later, I brought my Psy_ prototype to Princeton and used it to reconstruct grad school scene by scene over a few days. We lingered in Fine Hall, the Graduate College, and the IAS woods; recalled conversations and mapped the emotional weather of those years in great detail. I felt some of the fog lift, and I may have finally come to terms with mathematics. Spoiler: our conclusion was that I never learned how to do math.

I guess mathematics is more load-bearing in my inner world than I cared to admit. Only took me a little over a decade.

I don’t know what follows from here, but it is nice to be able to occasionally play with it again when I feel like it. Although the old world may have ceased to exist by the time I managed to wander close again with my very slow, very random walk.

-C conan777@gmail.com

Two years in San Francisco

Hi all, last time I posted was on my 30th birthday, a whole 2.5 years ago… I never explained where I decided to go to apply my (then) newly acquired software engineering skills. So here we go. =)

After evaluating possibilities in startups, hedge funds and big tech companies I decided on joining Google. The offer wasn’t the highest I had but definitely competitive, their San Francisco office was a charming brick building converted from an old coffee factory overlooking the Bay Bridge, but most importantly it was one of the ‘things I want to do when I grow up‘ since I was 12 years old (I remember reading about the arcade and scooters in offices).

Highlight of the job: view from my desk. Some days at dusk, the bridge directly reflects the sunlight and turns golden, along with the shiny glass windows on Treasure Island in the background:

Sketch from workstation

To fully embrace city life, I rented a tiny (but absurdly expensive) studio apartment in a cool looking high-rise building that’s a few minutes walk from the office. For the very first time, I acquired a few physical items from designers I’ve always admired (Chairs by Charles Eames and Arne Jacobson, Fortuny Pallucco floor lamp, Philippe Starck’s spider lemon squeezer and Zaha Hadid cheese grader).

Anyways, so everything went pretty smoothly for about a year, I joined a team in mobile performance analytics (basically I was selecting a team in SF and made the decision based on conversation with a particularly charismatic skip manager). The job turned out to be quite mundane and neither creative nor very intellectually stimulating. But I found ways to entertain myself elsewhere, such as hanging out with friends, annual ski pass, periodical visits to Disney… Speaking of which, Galaxy’s Edge is absolutely amazing! In my opinion it’s probably the best piece of Imagineering in a few decades!

Then Corona hit in March 2020, I was trapped at home, got depressed, started re-thinking my life again (don’t worry, it’s been amazing how quickly I became totally un-depressed the moment I un-trapped myself and started moving around ^_^).

Anyways, exactly a year later in March 2021, as the world started to open back up, I got out of Google, moved my belongings into a storage unit and went back on the road =)

Yes I finally got a driver’s license… and a tiny car ^_^

Some random programs I wrote (Part II)

Unrelated note: I turned 30 today and am currently at the final stage of deciding between offers for my next career (very exciting times & stay turned for updates =) )

42 profile as of March 6th, 2019

Somewhere in the middle of my time at 42, I took a “C++ piscine”, graduated from C to C++ and started writing object oriented programs. This post will give a pictorial outline of a few of those later projects. Again, most of those are 2-man projects I shared with my coding companion Liam Dehaudt.

Hashgraph

https://github.com/conanwu777/hashgraph

This is an off-the-galaxy project “custom created” for us by a guy named Gaetan who run the school here. The goal was to understand this paper, which presents a consensus algorithm comparable to block-chain and implement a small scale version of the system.

Hashgraph visualizer in action (intentionally slowed down for clarity)

In the example above we have 6 nodes in the network, they randomly ‘gossip’ to each other with gossips potentially carrying a payload. Every local graph is then updated through the gossip. New nodes representing the event of the gossip is added on (blue nodes), every ’round’ there is a layer of ‘witness nodes’ (red); when witness was well know they become ‘famous’ (yellow) and the famous witnesses then vote for the authenticity of other nodes (once nodes are approved, they turn green and is then logged into the database). If nodes are not approved (i.e. error or fraud), they will turn grey and a waring will be printed. We also implemented our own MD5 hashing algorithm to use for all connection and signatures.

Museum of Shaders

https://github.com/conanwu777/Museum_of_Shaders

A cool graphics project exploring the fantastic world of openGL fragment shaders (i.e. using a single shader applied to a quad to render things line 3 dimensional fractals). We place shaders in a museum environment (Which I definitely did not steal from the British Museum Elgin marble room) by using billboards to fake 3D and switch between two different display/perspective systems when far away and close to the shaders.

As some may have picked up, I was able to put in some not-so-subtle references from mathematics, the shaders exhibited are:

  • Mandelbox (the scale multiplier changes over time)
  • Mandelblub
  • Sierpinski’s tetrahedron
  • IFS based on Sierpinski symmetry
  • Semi-transparent Quaternion Julia set (4th dimension evolves over time)
  • Cloud with Volumetric ray-marching
  • Structure generated by Kleinian group in 3D torus
  • Galaxy (2D shader)
  • Kaleidoscope (2D shader with octagon symmetry)

Was a lot of fun playing with shader ray-marching to get them to work =) & in the process I have discovered some amazing online fractal and shader enthusiast communities such as ShaderToy.

Voxel World

https://github.com/conanwu777/Voxel_landscape

Sunset from a mountain top

Generated infinite Minecraft style terrains using a few layers of Perlin noise. Optimized in openGL by making block meshes etc. I had lots of fun making landscape look natural, included snow, mountains, grass, sand, water, trees and caves.

Moving, running or gliding through the world

Gomoku

https://github.com/conanwu777/GomokuAI

An AI capable of playing the classical board game Gomoku along with an implementation of the game mechanisms and UI.

We implemented a version of minimax algorithm with Alpha-Beta pruning enhanced by killer heuristics. One of the rather unconventional idea used was, to reach higher search depth and take full advantage of the entire game time as a real player would, I decided to make a parallel thread which continuously search and hash moves back-stage while human player is thinking, then we are able to cap the return time at 0.5 seconds once player placed a stone by iterative deepening.

Some random programs I wrote (Part I)

In late April 2018, I officially went onboard 42 as a ‘cadet‘ and have since ‘climbed the ranks’ all the way to ‘captain‘ by completing various programming projects in the ‘galaxy‘. It has been a uniquely addictive process. I decided to write a post to outline some of the projects as well as sharing my plans on what’s next. Please also feel free to visit my Github for the source code and more detailed descriptions of the projects.

The galaxy

Below are a few of my personal favorites, ordered roughly chronologically.

Note: many of below are team projects done in pairs or triples, I’ll credit my awesome friends and teammate Liam Dehaudt and Charlie Gleason here =)

Fractals

https://github.com/conanwu777/fractals

This was one of the first projects in the curriculum. The goal is to render various fractals in \mathbb{C} in real-time by taking mouse position as parameter. Parallel threads are used to speed up the rendering.

After completing the basic ‘stage set-up’ and the required Mandelbrot and z^2 + c. I had lots of fun coming up with color schemes and implementing rational function Julia sets such as those with locally connected Julia set homeomorphic to the Sierpinski carpet:

As well as those that has a hyperbolic symmetry similar to that of the Poincare disk:

Ants

https://github.com/conanwu777/ants

This is an optimal transportation puzzle where one needs to find the minimal number of steps to transport a fixed amount of ants from one point to another through a graph. I had fun designing a retro-style ascii visualizer on top of the algorithm =)

We re-formulated the problem into a max-flow problem on a derived directed graph (we double all vertices and edges and form a larger graph) to apply the Ford–Fulkerson theorem. Project the resulting parallel paths to the original network and resolve overlaps. Then we queue the ants in the resulting set of disjoint paths depending on the length of each path. The result guarantees optimum solution as long as the number of ants is greater than the sum of lengths of paths from Ford–Fulkerson.

A simple example where the flow solution would result in overlapping paths and resolving overlap was required and the queuing can be seen observed

CoreWar

https://github.com/conanwu777/corewar

We made a reproduction of the Core War game. Including full implementation of assembly compiler, virtual machine and GUI.

Virtual Machine in action (4 worrier mode)

Core War is a 1984 programming game created by D. G. Jones and A. K. Dewdney, inspired by a malicious virus written in the 80’s. To deal with the self-replicating virus, a white hat hacker invented Reaper. It was a virus designed to spread and eliminate the malware.

The idea was simple. You compete by designing viruses to overtake a computer. You win by protecting your own program and overwriting your opponent’s programs. This is all happening on a virtual machine.

Particle System

https://github.com/conanwu777/particle_system

An openCL and openGL simulation of movement of millions of particles in space in various gravitational modes. Used GPU for parallel computing.

Change gravity strength
Explode

Note: Due to the GPU restrictions, this project records with significant quality and performance loss, highly recommend trying it out!

…More to come in Part II…

2018 – Silicon Valley, 42 and programming (part II)

As explained in the previous post, I picked up programming in 2018 at a place named ’42’ (as in Hitchhiker’s guide to the galaxy) and got very much addicted to it. This post will outline how that happened and my somewhat non-traditional path in learning programming.

42 Silicon Valley campus

It all started one winter night in 2017 at a random hostel in HongKong, I went there for a few days between trips to pick up my Canadian visa. After visiting Disneyland and re-visited a few tourist attractions I found that there’s not much to fill my days with in this humid and bustling city. As I browsed blogs randomly, I stumbled upon this article, which described a new concept school in Paris that is apparently highly selective and completely free.

I was immediately curious about the place and learned that they have opened a campus in Silicon Valley. Without better things to do that night, I decided to make an account and try the ‘logic puzzle quiz’ which is the pre-requisite for entering. At 4 am I finished the quiz (which had the time limit of 4 hours and I was only partially aware when started). The next morning I received an e-mail invitation to their Silicon Valley campus for the 4-week long ‘piscine’ (something like bootcamp before the full-time program for further selection), which comes with free accommodation.

42 admission process as of Jan. 2018

Since I do plan to spend some time in the Bay Area and have alway had a slight regret on not having been properly introduced to actual programming (I learned a bit of VB in elementary school and didn’t like it, then took a graduate courses in purely theoretical algorithms and a computer graphics course in C++ without completing any coding pre-requisites). I signed up for the Piscine in March with the idea of treating it as a month-long puzzle-solving vacation to catch up on some missed liberal arts education. (the full program was said to take 3-5 years and I obviously won’t want that much more schooling)

The Piscine:

It’s beginning of March, my plan was to fly directly from London to Oakland and land the night before the program starts. I managed to miss the plane due to a combination of London train delays, over-confidence in being the last person to check-in built from McKinsey days and the famous black-cab taking a lot longer than legend has it… Anyways, I ended up having to fly through Scotland then Iceland and spending a night at an airport hotel. So by the time I arrived at the Piscine it was already mid-night of day00 (all counting starts at 0 here, the way John Conway used to teach us).

A team speed-coding game

So the piscine starts, to me the school felt somewhat like a place in a sci-fi story, ran by aliens/robots/rats, everything is automated, there were no staff aside from a few student volunteers:

  • We code in C by learning from sequence of videos ordered by day
  • A new set of puzzles is released every weekday morning at 8:42am and due at 11:42pm the next day (so they overlap)
  • One exam per week on Fridays where you log-on to complete
  • One group project and one individual project for each weekend

There is an interesting ‘correction points’ economy, where each submitted day has to be peer-reviewed 2 times before it can be computer corrected (i.e. one needs to schedule corrections and spend points to get people to go through the submitted code; one earns correction points by grading others). I was able to catch up on the first day’s problems in the next day but between corrections and all the other events, time was quite tight if one aims to finish all problems, even for me.

The automated correction system is designed to be quite brutal, lots of edge case testings and one small error in one exercise would stop the grades from all the later exercises to count. So even though I managed to solve all problems I still failed a couple days.

A day where a small error sneaked in and a few harder problems doesn’t count

The goal of the Piscine is to gather XP from days, projects and exams to level-up as much as possible. This gamification worked really well on me as I found myself working till 3 am regularly trying to be the highest leveled person in the piscine. It’s perhaps the most fun I’ve had in solving puzzles after Mathcamp back in high school =)

Piscine aftermath:

It was mid-April, the Piscine ended and I felt that I haven’t had enough… Since I had no concrete plan on the horizon (vaguely my plan was to start a new career in Toronto for a few years, ideally doing something new and exciting), I decided to enroll in the full-time program ‘while I’m figuring out what to do next and leave anytime’… this turned out to be a dangerous plan as I am still here after a straight 8 months of coding and having completed the entire program (beside internships), now winding up my interview process and choosing offers for software engineering.

This post is getting a bit long and I haven’t even gotten into any actual programming yet… I’ll probably do a separate post (or two) to describe some projects and the time I spent in their Paris and Ukraine campuses…