summaryrefslogtreecommitdiffstats
path: root/_log/bumblebee.md
blob: aa7b79d71ed8d6c430e1138898f4e2f3ec076126 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
---
title: Bumblebee
date: 2025-04-02
layout: post
project: true
thumbnail: thumb_sm.png
---

One year at the trading firm. Brittle ETL jobs, scripts max out CPUs. €0.4
mil/month cloud costs and budget cuts make a hardware bailout nonviable. Asked
to restart stalling servers as a workaround—a fine idea in every respect; only
doesn't solve the problem.

2025-02: Built tool on my own time to record browser sessions and synthesize
scripts.

<video style="max-width:100%; margin-bottom: 10px" controls="" poster="poster.png">
  <source src="bee.mp4" type="video/mp4">
</video>

Stack: C# WinForms, WebView2 (Edge), Scintilla.NET editor.

Data flow: injected JS hooks + browser + editor → events → commands → optimizer
→ editor. 

Events and commands stored in two linear lists. Mid-session manual edits desync
lists, block optimizer. ASTs are overkill. Workaround: end-session edits only.

2025-03: First iteration shipped. Optimizer squashes event sequences into
single commands (e.g., calendar clicks → text input). Better DOM addressing
(xpath, id, element) using heuristics. Working on key optimization: bypass
browser, grab data file directly when possible.

2025-04: Abandoned project—left the firm.