reading experience

select a module

module 01

Migrating to Auctionet: When Platform Choice Makes or Breaks Your Business

6 min20 Feb 2024

Migrating an entire auction business to a new platform isn't just a technical challenge – it's an operational transformation that touches every part of the business.

The Situation

The auction house was using multiple disconnected systems:

  • One platform for cataloguing
  • Another for photography and image management
  • Separate tools for invoicing
  • Manual processes for shipping coordination
  • Spreadsheets everywhere

They needed everything in one place, and Auctionet looked promising. But implementation? That was going to be the real challenge.

Why This Project Mattered

This wasn't just about changing software. They had international teams, complex compliance requirements, and payment processes that spanned multiple countries. Get the migration wrong, and the business could lose months of momentum.

The Implementation Approach

1. Full Operational Takeover

Instead of trying to train existing staff on a new system while they were still running live auctions, I took over the entire Auctionet implementation:

  • Cataloguing: created standardized processes for item descriptions and categorization
  • Photography: established workflows for consistent, high-quality product images
  • Inventory management: set up proper tracking from acquisition to sale
  • Shipping coordination: integrated international shipping with customs requirements

2. Team Coordination Across Time Zones

The team was spread across the UK and Vietnam, which meant:

  • Creating documentation that worked across language barriers
  • Establishing communication protocols for different time zones
  • Setting up approval workflows that didn't bottleneck on any single person

3. Compliance and Payments

International auctions mean international regulations. I handled:

  • VAT compliance for different countries
  • Payment processing integration
  • Customs documentation automation
  • Fraud prevention protocols

The Numbers That Mattered

First month results:

  • 1,000+ items successfully listed and categorized
  • £12,000 generated in sales from the new platform
  • Zero payment failures or compliance issues
  • Seamless coordination between UK and Vietnam teams

What Made This Work

Standardized Processes

Instead of trying to accommodate everyone's preferred way of working, I created one clear process that everyone followed. This eliminated confusion and ensured consistency.

Documenting Everything

When you're working across time zones and languages, assumptions kill projects. I documented every workflow, every approval process, every edge case we encountered.

Gradual Handover

Rather than training everyone at once, I gradually handed over different parts of the process as the team became comfortable with each component.

The Technical Side

Platforms integrated:

  • Auctionet as the core auction management system
  • Cloud storage for high-resolution photography
  • Payment processors for international transactions
  • Shipping APIs for automated customs forms

Key automations:

  • Automatic invoice generation after sales
  • Shipping label creation with customs documentation
  • Payment reconciliation across multiple currencies
  • Inventory status updates in real-time

Lessons Learned

Process beats technology every time. The platform was only as good as the workflows we built around it. Spending time upfront creating clear, documented processes saved weeks of confusion later.

International coordination requires over-communication. What feels like too much documentation and too many check-ins is actually just enough when you're working across time zones.

Gradual migration reduces risk. Instead of switching everything at once, we migrated one auction at a time. This let us catch and fix issues without shutting down the entire business.

Aftermath

The auction house now runs entirely on Auctionet, with standardized processes that work consistently across all their locations. They can onboard new team members quickly because everything is documented, and they haven't had a single compliance issue since the migration.

Most importantly, they can focus on what they do best – curating and selling interesting items – instead of fighting with technology.

Planning a platform migration? Let’s discuss your requirements.

module 02

Transforming a Traditional Auction House with Digital Strategy

8 min15 Mar 2024

Cadmore Auctions had been running traditional live auctions for decades. Then COVID hit, and suddenly their entire business model needed to pivot to digital — fast.

The Challenge

When I first walked into Cadmore Auctions, I saw a business with incredible expertise in antiques and art, but their digital presence was practically non-existent. They had:

  • a basic WordPress site that hadn't been updated in years
  • no social media presence whatsoever
  • manual processes for everything from cataloguing to invoicing
  • no way to reach international buyers
  • auction processes that required physical attendance

The pandemic meant they needed to transform from a local, in-person business to a global, digital-first operation. And they needed it done quickly.

What I Did

1. Emergency Website Overhaul

First priority was getting a functional website that could actually showcase their auctions online. I completely redesigned their WordPress site using Elementor, focusing on:

  • mobile-responsive design (most of their traffic was mobile)
  • proper SEO structure to attract international buyers
  • integration with their auction management system
  • high-quality image galleries for auction items

Result: web traffic increased by 47% within the first three months.

2. Social Media From Zero

They had zero social media presence. I built their entire social strategy from scratch:

  • TikTok: focused on behind-the-scenes content showing the auction process
  • Facebook: targeted ads for specific auction categories
  • Instagram: high-quality photos of unique pieces

The TikTok account was particularly successful. By creating short, engaging videos about interesting auction items and the stories behind them, we grew from 0 to 10,000 followers.

Result: social media became their primary customer acquisition channel.

3. Automation That Saved £9,321 Annually

The amount of manual work they were doing was staggering. I created Google Apps Scripts that automated:

  • Inventory cataloguing: automatic item descriptions from photos
  • Customer communications: follow-up emails after auctions
  • Financial reporting: automated invoicing and payment tracking
  • International shipping: customs forms and tracking

Result: saved £9,321 in annual labor costs and eliminated human errors in invoicing.

4. International Expansion

Before, they could only reach buyers who physically attended auctions. I helped them:

  • set up international shipping processes
  • create multilingual auction descriptions
  • establish payment systems for international buyers
  • coordinate with overseas partners

Result: monthly sales increased by £160,000, mostly from new international customers.

The Numbers

  • 12 international auctions executed successfully
  • £160k increase in monthly sales
  • 47% growth in web traffic
  • 10,000 TikTok followers from zero
  • £9,321 annual savings from automation

What I Learned

This project taught me that digital transformation isn't just about technology — it's about completely rethinking how a business operates. The auction house didn't just need a website; they needed to reimagine their entire customer journey for the digital age.

The most successful part wasn't the fancy automation — it was the social media strategy. People are fascinated by the stories behind antiques, and social media gave us a way to share those stories with a global audience.

The Technology Stack

  • WordPress + Elementor for the main website
  • Google Apps Script for automation
  • Facebook Ads Manager for targeted advertising
  • TikTok Business Tools for content strategy
  • Various shipping APIs for international logistics

The beauty of this solution was its simplicity. We didn't build anything from scratch — we just connected existing tools in smart ways.

Aftermath

Cadmore Auctions is now a digitally native auction house that happens to also run physical auctions, rather than the other way around. They've maintained their traditional expertise while embracing digital opportunities.

They still call me occasionally when they want to add new features or expand into new markets. But mostly, the systems run themselves now — which was always the goal.

Interested in digital transformation for traditional businesses? Let's talk about your project.

module 03

Data Safety Nets for Non-Tech Auction Platforms

5 min6 Mar 2025

Working as tech in a company without a technology DNA is like consulting for a client: fragmented processes, outdated tools, and almost no safety nets. Yesterday, a single CSV import wiped 30 lots from the catalog—an expensive lesson that led me to rebuild the entire data protection mechanism.

The 30-Lot Override Incident

The auction platform the company uses allows CSV uploads to update lots. But if the session already has data, the new file will completely override the old data without warning which specific lots are affected, no automatic backup, and certainly no Undo button. The result:

  • 30 lots disappeared, including 20 critical ones.
  • The whole team had to scramble to track down sellers and consignors to process payments after the auction.
  • Internal news spreads fast—a small error easily becomes a "disaster" in others' eyes.

Why Logs Saved Us

Fortunately, I always keep operational logs: which file was imported, when, and by whom. Thanks to this, when the incident happened, I could trace back very quickly, compare with backups, and restore the exact lots needed. Without logs, the story would have been "ancient history"—not knowing the cause, let alone how to fix it.

Rebuilding the Backup System Properly

After this incident, I divided data protection into three layers:

  1. Immediate backup: every time we export a catalog, save a "comprehensive" CSV copy before importing anything.
  2. Structured naming: instead of letting the system name files randomly, backup files are standardized as {auction-code}_{yyyymmdd}_{hhmm}.csv so Spotlight or Finder can find them in seconds.
  3. Script the process: wrote a Selenium script that reads the auction name directly from the system, auto-clicks export, and saves the file to the right folder. Repetitive work is delegated to machines, avoiding scenarios where we backup the wrong session or forget to name properly.

Lessons from Doing Tech in Non-Tech

  • Small UX risks become big business risks without protection mechanisms. A warning dialog isn't enough.
  • Logging is a lifeline: not just for clear accountability but also to calmly find exactly what's broken.
  • Automation must serve people: backup scripts help the whole team feel more secure, even colleagues who aren't tech-savvy.
  • Share solutions instead of assigning blame: when people see there's a safety net, no one's interested in "calling out" errors anymore—we solve problems together.

A bit of discipline and a few small code snippets have made our auction catalog much safer. We don't need to wait for the platform to upgrade; we can proactively build a reliable system for our own team.

module 04

From Zero to 50 Code Scripts in 7 Months

7 min9 Jan 2025

Coding used to feel distant to me—something technical that only computer science people could learn. I tried free CodeCamp for a while, learned some HTML and CSS, but couldn't apply it to anything practical. The exercises were simple, but looking at real website code (you know, when you right-click and select "inspect") was overwhelming.

Yet in just 7 months from May 2024 until now, Tea developed over 50 code files of various types—from Windows batch scripts and AppScript to Python using Selenium, CSV, Pandas—to solve real-world problems and automate repetitive tasks. Calculating roughly, the workload these scripts handle equals about 2.5 full-time people, or nearly 100 hours per week.

Sounds fancy and impressive, but it's not that complicated. Let me explain.

In the past, to write software, a coder needed to know hundreds or thousands of commands, each with a different function. To execute complex programs, coders had to know as many commands as possible in case they'd need them someday. In other words, you had to know a LOT and hope that when facing real problems, you'd know which command to use for maximum efficiency.

There was a time I dreamed of developing software. I looked online to see how long it would take to code a complete program. Disappointment flooded in when I learned it takes 2-3 years just to learn one programming language—and that's still not enough to build a complete software product. You'd only handle one part of software development and still depend on others for front-end, back-end, etc. So discouraging!

When ChatGPT emerged in 2021, it was truly a turning point.

Now people don't need to memorize all programming languages anymore. You just describe your idea to ChatGPT, and it can develop your program in any programming language.

Start with a specific problem: Usually, programming courses teach very foundational, basic knowledge. This knowledge is important, but meaningless if it's not relevant. It's like: "What you're saying is great, but how does it relate to me?" That's why when I took courses from the beginning, I'd give up after lessons 1 and 2 (probably due to my impatient, easily-bored nature). So if I could do it over, Tea would start with a specific problem, like:

  • Create a series of Google Drive folders based on a list in an Excel file, then send links to these folders to corresponding email addresses in that file.
  • Rename all files in each subfolder, adding the folder name as a prefix for easy identification when sharing files.
  • Automatically count words written daily/weekly/monthly and send automated email reminders to meet writing goals.

Before ChatGPT, if you asked a programmer friend, they might respond: "You'll need to learn JavaScript, then develop AppScript, then how to use/connect Google's API to your code..." You couldn't just ask them to code it for you as a demo to learn from. Anyone willing to teach like that would charge serious money—both for writing custom code to your requirements AND for teaching you how to make similar programs.

Now it's completely free. Just throw the above tasks into ChatGPT, and it answers thoroughly, writes the code, provides examples, and if you don't understand a line, explains that specific line.

There will be times you'll encounter foundational knowledge or basic concepts that require dedicated study time to understand. But it's not too late to learn then, right? Plus, you'll have more motivation to learn because understanding it sooner means solving problems sooner and faster.

A concrete example: At one point, Tea was developing multiple code pieces simultaneously. Tracking changes without proper version control meant copy-pasting into computer notes, labeling as version 1, version 2, keeping whatever worked to return to that version later. Then I asked online forums and ChatGPT and learned that professionals don't do it that way—they use Git, storing different versions on GitHub. Progress is updated and backed up using commands, making it quick and clean without messy copy-pasting. So I spent a whole day learning how to use Git and upload to GitHub. It took considerable time but I always had motivation to understand quickly so I could return to continue developing my project.

Maybe because I love languages, Tea likes to think of programming languages as... languages. They have grammar and vocabulary just like regular languages. Vocabulary includes different commands—for example, in AppScript there are commands to open files, close files, copy data, paste data, rename files, create folders, delete files... or in Selenium there are commands to open new tabs, close tabs, click, scroll up, scroll down, fill in blank fields... Grammar is the syntax to link those commands together—like doing what first, what second, doing A for how many times before meeting condition X, then executing B to close the code.

To master this language, you need to know enough vocabulary and enough grammar to link that vocabulary together.

That's why applying language learning methods like English to learning programming and software design works really well! For example, no matter how much vocabulary and grammar you learn, if you don't use it, you'll forget. But if you only know a few things but use them constantly, use them repeatedly until you encounter situations where they're not enough, then go online and learn a bit more to cover what you need—that's when you remember forever, remember clearly. When you hear or read those "words," you immediately know what people are talking about.

To speak English or any language well, first you need to be able to speak, right? So to program truly amazing software, first you need to understand the language, but understand it at a usable level, not just know it superficially then forget.

A basic programming team, as Tea understands, usually has a leader and a team of coders. The leader typically won't sit and write, typing each line of code directly. Mostly they'll develop concepts, direct and guide team coders with each person writing different code sections. Then the leader reviews for errors, checks if things can be optimized further, and either the leader or a team member compiles the code, combining different parts together.

Just like in a factory—to make a table, one person makes the table legs, another makes the tabletop, someone screws them together... while the master craftsman might only handle critical steps or just observe and guide.

AI tools nowadays can, to a relative degree, replace the work of coders sitting and typing each line of code to develop parts. We don't need people who know thousands of lines of code in dozens of programming languages to write those component codes anymore. So coding teams now have two development directions:

  • The leader sees ChatGPT can write component code, cuts staff, sits alone and instead of emailing employees, types prompts for ChatGPT to write, then compiles the code themselves or keeps one member to compile the code. Done. A team of 8 people before now becomes just 2.
  • Each coder now holds the development capacity of an entire coding team from before, so this team is more effective and productive than ever. One team alone brings revenue equal to an entire company before, and company revenue increases tenfold. However, this requires coders to develop thinking and other skills beyond coding, like listening to customers, understanding needs, discovering problems, designing solutions... Anyone who only knows code and knows it really well is... a bit problematic.

Of course this is just an over-simplified perspective—simplified so that I and others not working in tech can understand. This issue has many more angles to analyze; in reality it's not as simple as this.

Tea believes that in a few years from now, most people will know how to develop software, because everyone has an excellent, amazing teacher—ChatGPT—right beside them providing detailed guidance, hand-holding instruction, even playing the role of a "coder" in your "one-person team," while you yourself are a leader describing problems, supervising and adjusting to fit actual needs.

Anyone can learn to create code snippets to serve personal work needs. For example, accountants can make code to automatically aggregate accounting data, export financial reports, automatically send emails to clients as desired. Singers can make programs to manage shows, book schedules, invoice clients... and especially teachers like Tea can automate grading, sending assignments, thereby having more time to focus on learning cooler things to teach students.

Of course, the above tasks already have ready-made software solutions (called SaaS) like Calendly (scheduling), MISA (accounting), eInvoice (invoicing), but there are still small daily tasks that consume lots of time while they could be automated by simple code snippets. Knowing how to code isn't about replacing those solutions, but supplementing where they're lacking.

It's not too late to start learning, everyone!!