Make it work.
Write it down.

Notes from a developer who writes ABAP on real SAP systems and hands that work to agents. Art, travel, the economy and books live next door.

Today's line-up

SUN 10.11

  1. 09:00ECONOMY BOX09:00 KST slotNot yet
  2. 11:00SAP BOX11:00 KST slotNot yet
  3. 13:00ART BOX13:00 KST slotNot yet
  4. 15:00DEV BOX15:00 KST slotNot yet
  5. 17:00BOOK BOX17:00 KST slotNot yet

2026.10.11 Korea time

Latest notes

'26/10/10 UPDATE

What Is Literature?: Why Does Sartre Leave Poetry Out of Commitment?

A reading guide to volume 9 of Minumsa's World Literature series, Jean-Paul Sartre's What Is Literature?: why the champion of committed literature asks no commitment of poetry, painting or music, explained through one distinction in Chapter 1, followed by reading as a spinning top, the history of the reading public, the writer's situation in 1947, and what to mark as you read.

Classics · 7 min

'26/10/10 UPDATE

Korea’s August trade surplus was $34.78 billion. Why was the goods balance $46.81 billion?

In the same August, Korea’s customs trade surplus was $34.78 billion while the Bank of Korea’s balance of payments goods surplus was $46.81 billion. This note follows how change of ownership, merchanting and CIF versus FOB valuation open a $12.03 billion gap, with a small hypothetical calculation.

Balance of payments · 7 min

'26/10/09 UPDATE

Tonio Kröger, Tristan, Death in Venice: Why Do Mann's Artists Only Watch Life?

A reading guide to volume 8 of Minumsa's World Literature series, Thomas Mann's Tonio Kröger, Tristan, Death in Venice: the eight stories and four translators, the nine chapters of “Tonio Kröger,” where Tonio at the glass door, Spinell on the gravel path and Aschenbach in his beach chair stand, the mirror scenes in “Death in Venice,” and what to mark as you read.

Classics · 8 min

'26/10/09 UPDATE

Promise.all rejected, so why do the other requests keep running?

Three APIs were called with Promise.all; one returned a 500 and the code jumped to catch. Yet the server log shows the other two requests were handled to the end. Using a fake API on 127.0.0.1 and Node.js v24.21.0, this note runs Promise.all, Promise.allSettled and Promise.all with an AbortController to see what stops and what keeps going, and explains why abort() does not undo work the server has already done.

Web / JavaScript · 8 min

WHAT'S NEW

Just arrived

THE LIBRARY

Notes worth keeping145

Showing 12 of 145 posts
ECONOMY BOXBalance of payments

Korea’s August trade surplus was $34.78 billion. Why was the goods balance $46.81 billion?

In the same August, Korea’s customs trade surplus was $34.78 billion while the Bank of Korea’s balance of payments goods surplus was $46.81 billion. This note follows how change of ownership, merchanting and CIF versus FOB valuation open a $12.03 billion gap, with a small hypothetical calculation.

Balance of paymentsGoods balanceTrade balance
7 min read · KO / EN
ART BOXArt

How far back must you stand before a Chardin takes shape?

Four paintings by Jean-Siméon Chardin from about 1728 to 1735, each looked at once from a distance and once up close, to follow the distance at which an object breaks into brushstrokes and becomes an object again.

ArtJean-Siméon ChardinPainting
9 min read · KO / EN
BOOK BOXClassics

What Is Literature?: Why Does Sartre Leave Poetry Out of Commitment?

A reading guide to volume 9 of Minumsa's World Literature series, Jean-Paul Sartre's What Is Literature?: why the champion of committed literature asks no commitment of poetry, painting or music, explained through one distinction in Chapter 1, followed by reading as a spinning top, the history of the reading public, the writer's situation in 1947, and what to mark as you read.

민음사 세계문학전집#009장폴 사르트르
7 min read · KO / EN
BOOK BOXClassics

Tonio Kröger, Tristan, Death in Venice: Why Do Mann's Artists Only Watch Life?

A reading guide to volume 8 of Minumsa's World Literature series, Thomas Mann's Tonio Kröger, Tristan, Death in Venice: the eight stories and four translators, the nine chapters of “Tonio Kröger,” where Tonio at the glass door, Spinell on the gravel path and Aschenbach in his beach chair stand, the mirror scenes in “Death in Venice,” and what to mark as you read.

민음사 세계문학전집#008토마스 만
8 min read · KO / EN
DEV BOXWeb / JavaScript

Promise.all rejected, so why do the other requests keep running?

Three APIs were called with Promise.all; one returned a 500 and the code jumped to catch. Yet the server log shows the other two requests were handled to the end. Using a fake API on 127.0.0.1 and Node.js v24.21.0, this note runs Promise.all, Promise.allSettled and Promise.all with an AbortController to see what stops and what keeps going, and explains why abort() does not undo work the server has already done.

JavaScriptPromise.allPromise.allSettled
8 min read · KO / EN
SAP BOXABAP

Why Does 7 / 2 Give 4 in an ABAP Integer?

ABAP fixes the calculation type first, including the result field, and integer arithmetic rounds after every division instead of truncating. Using a fictional example, this note covers why 7 / 2 gives 4 and 7 / 2 * 2 gives 8, when an inline declaration drops decimal places, and how to use DIV and MOD when you need truncation.

SAPABAPArithmetic Expression
8 min read · KO / EN
ECONOMY BOXForeign exchange reserves

Korea’s reserves fell $1.72 billion in September. Did the Bank of Korea sell that many dollars?

Korea’s foreign exchange reserves fell $1.72 billion in September, but dollar sales are not among the reasons the Bank of Korea gave. This note separates deposits, currency conversion and rounding, and shows where actual net dollar sales are published three months later.

Foreign exchange reservesFX interventionExchange rates
8 min read · KO / EN
SAP BOXABAP

Why Does AT NEW Break on Every Row and Show the Name as ****?

AT NEW kunnr treats kunnr and every column to its left as the group key, and when you read with INTO, the columns right of the key turn into asterisks and initial values inside the AT block. With four fictional sales rows, this note covers the causes, three fixes (column order, copying values, GROUP BY), WHERE conditions and how the documentation editions differ.

SAPABAPInternal Table
7 min read · KO / EN
DEV BOXWeb / JavaScript

Why did the last digit of an order ID from my API change?

The server sent 9007199254740993, but res.json() gave 9007199254740992, because a JavaScript number cannot hold integers above 2^53-1 exactly. Using a fake order API on 127.0.0.1, this note reproduces a cancel request hitting the wrong order, then shows two fixes run with Node.js v24.21.0: sending IDs as strings, and keeping the original digits with JSON.parse's context.source and JSON.rawJSON.

JavaScriptJSONJSON.parse
9 min read · KO / EN
ECONOMY BOXBusiness cycle indicators

Output, retail sales and facility investment all fell in August. Why did the coincident index cycle rise 0.5 points?

Korea's August industrial activity data showed output, retail sales and investment all down, yet the coincident index's cyclical component rose 0.5 points to 101.7. Trace the gap through the seven components and their volatility, and see why 0.6% and 0.5 points differ.

Composite indexCoincident indexCyclical component
7 min read · KO / EN
BOOK BOXClassics

Heart of Darkness: Why Does Marlow, Who Cannot Bear a Lie, End with One?

A reading guide to volume 7 of Minumsa's World Literature series, Joseph Conrad's Heart of Darkness: Lee Sang-ok's translation, the frame that opens on the Thames, the course of the three parts, the lie told at the end by a narrator who says he cannot bear one, the argument around Achebe's critique, and what to mark as you read.

민음사 세계문학전집#007조지프 콘래드
8 min read · KO / EN
DEV BOXTools / npm

Why won't ^0.2.3 in package.json move up to 0.3.0?

npm's ^ holds the left-most non-zero digit, not "the same major", so ^0.2.3 never takes 0.3.0. Using real installs with npm 11.19.0 against a fake local registry, this note shows what each range brings in, what the lockfile, npm outdated and npm update each change, and how to move a 0.x dependency to its next minor.

npmsemverpackage.json
7 min read · KO / EN
12 / 145 posts