Tunas Akara

Blog

Project notes and guides to technology decisions, costs, and risks in business operations.

125 articles found

8 min read

For Technical Teams

Database Indexes: Read Gains and Write Costs

Index write costs, composite column order, reading EXPLAIN without panic, why indexing every column is a smell.

databasepostgresqlindexing
7 min read

For Technical Teams

IoT Billing Architecture: Meter Readings to Invoices

IoT billing architecture from meter readings to invoices: ingestion, aggregation, versioned tariffs, review, and a traceable audit trail.

iotbillingmetering
6 min read

For Business

AI Licenses: Check Code, Model Weights and Data

AI code licenses do not clear model weights or training data. Check each version before commercial deployment.

licensingaicompliance
8 min read

For Technical Teams

Payment API Idempotency: Avoiding Double Charges

Idempotency keys stop retried payment requests from double-charging customers. How Stripe, Adyen, Midtrans, and Xendit each implement them.

paymentsidempotencyapi-design
7 min read

For Business

Open-Source Licenses in Commercial Software

MIT, Apache, LGPL, GPL, AGPL — what each license obligates in commercial software, and where teams get burned.

licensingopen-sourcecompliance
11 min read

For Technical Teams

PostgreSQL GROUP BY Local Day Across Time Zones

Use PostgreSQL AT TIME ZONE to GROUP BY local day or hour across time zones, including half-hour offsets and daylight saving changes.

postgresqltimezonedashboard
6 min read

For Business

Adding WhatsApp Automation to Hotel Operations

Automate important hotel messages, track delivery and give staff a failure path. Check language, cost and guest consent.

hotel managementwhatsappautomation
6 min read

For Technical Teams

Modbus Polling vs Event-Driven Ingestion in IoT Backends

Polled Modbus vs event-driven MQTT — how each works, when to use which, why connection health matters more for polling.

iotmodbusmqtt
6 min read

For Business

How to Prevent Hotel Overbooking: Inventory vs Physical Room Assignment

Prevent double sales with shared availability and concurrent-booking protection. Test unavailable rooms and cancellations.

hotel managementoverbookingdatabase
6 min read

For Technical Teams

Unifying Modbus, BLE and MQTT in One Backend

How to unify Modbus, BLE, and MQTT devices behind protocol adapters and a normalization layer that writes one common telemetry data model.

iotmodbusble
6 min read

For Technical Teams

Modeling Hotel Room Status as a State Machine

Why hotel rooms need a status state machine — clean, dirty, inspected, maintenance, ready — so housekeeping and front desk never collide.

hotel managementstate machinepostgresql
6 min read

For Technical Teams

MQTT vs WebSocket: When to Use Each for IoT

MQTT vs WebSocket for IoT — what each is for, why real systems use both, and how data flows from broker to dashboard.

iotmqttwebsocket