Copyright (C) 1979-2025 Apollo Computer Corp.
Memory Test: 0K
CPU: Intel 80286 @ 12MHz
HDD C: PORTFOLIO.SYS
Graphics: VGA Compatible
System Status: ALL SYSTEMS NOMINAL
Skip to main content
0200 / 00:00:00 / 1970.01.01
×
HOME ABOUT NEWS PROJECTS REFERENCES LINKS

Paul Piper

Software Architect & Founder
Paul Piper - Software architect and serial entrepreneur 20 Years Building Enterprise Systems. Serial Entrepreneur. 100+ enterprise deployments. Published author on tech entrepreneurship. AI Software engineer.

CURRENT VENTURES

AIVory, Inc. (2024) • ilscipio GmbH (2009)

NOTABLE PROJECTS

AIVory • Scipio ERP • buchhandel.de • L'Oréal, Amadeus, Konica Minolta • 1&1 Internet, Aktion Mensch • Telering, Orange, Ikea • JetBrains integrations (Rookout, Sourcegraph)

RECENT POSTS

→ What Bluespec Borrowed From Haskell
Bluespec System Verilog reads like Haskell because it is, structurally, Haskell wearing a hardware costume. That is not a coincidence and it is not a gimmick someone bolted on to look clever. It is a real design choice with a real consequence, and I ran into that consequence directly while building Bluespec support into Flexible Haskell. Rules instead of always-blocks Write Verilog and you describe hardware behavior with always-blocks: procedural code triggered on a clock edge, and the burden of proving nothing collides sits entirely on you. → Keep reading
→ Flexible for Schematics - PCB Design Next to Your Code

Flexible for Schematics plugin logo

We build ESP32-based devices and boards that go to manufacturers like JLCPCB and PCBWay. The firmware side lives happily in Flexible for Arduino. The board side, though… switching between KiCad, schematic viewers, BOM generators, part search databases and the IDE eats a lot of time.

So we brought the PCB workflow into the IDE: Flexible for Schematics.

→ Keep reading
→ The OpenSCAD Plugin That Never Calls OpenSCAD
A CSG model is a recipe, not a shape. You do not draw the union of a cube and a cylinder, you write down “union of this cube and this cylinder” and something else has to work out what solid that actually describes. That something is a boolean-operator tree sitting over a small set of primitives - cubes, cylinders, spheres - and the entire discipline of constructive solid geometry is really just different answers to one question: how do you evaluate that tree into an actual mesh you can look at. → Keep reading
→ Flexible Sim - Simulation Models as Live Block Diagrams

Flexible Sim plugin logo

If you’ve followed the Flexible Julia posts, this one is a close neighbor: Flexible Sim.

Building and checking a simulation model is hard without proper IDE support. Much of the work still happens outside the IDE, in a separate tool - especially when your codebase mixes Dyad, Julia, Modelica and Python.

→ Keep reading
→ Every SAP System Has an Undocumented REST API
The first time I pointed a browser at /sap/bc/adt on a client system, it came back 404, and the 404 looked exactly like the URL did not exist. It was not the URL. It was a service node nobody had switched on. That single discovery is most of what this post is about, because it explains something bigger than one troubleshooting step: every SAP system running the ABAP Development Tools integration is quietly running a REST API, and there is no proper manual for it. → Keep reading
→ Flexible Delphi - Delphi and Free Pascal in JetBrains

Flexible Delphi plugin logo

Okay, so this one is a bit of a nostalgia trip.

Many of us learned to program with Delphi. Its form designer made it so easy: build a window, double-click a button, write the code behind it. And a lot of Delphi and Free Pascal code still runs today - in companies, in schools, and in old projects on our own disks. It deserves a good editor.

The problem is working with it outside the Delphi IDE: binary forms, ANSI source files, conditional compilation, Free Pascal dialects… So: Flexible Delphi.

→ Keep reading
→ A Language Server That Reads the Compiler's Mind
Most language servers read your file and make an educated guess about what the compiler would say. JETLS.jl skips the guessing and asks the compiler directly. That distinction sounds small until you have watched a language server get something wrong that the real compiler would never get wrong, because the language server never ran your code through inference in the first place. It parsed the syntax tree, matched some patterns, and did its best. → Keep reading
→ Flexible COBOL - A Real COBOL IDE in JetBrains

Flexible COBOL plugin logo

So this is an exciting one: Flexible COBOL.

COBOL never went away. It just got quiet. A lot of it still runs, and developing or modernizing it without proper IDE support is hard - especially across mixed IBM Enterprise COBOL and GnuCOBOL codebases with deep copybook trees.

→ Keep reading
→ The JVM Taught Us Tiered Compilation
I spent fifteen years tuning JVMs for banks, retailers and insurers, and it took building a Julia plugin to notice how much of that tuning HotSpot does for you before you ever touch a flag. The problem HotSpot solves is the one every JIT has: interpreted code starts instantly and runs slow, compiled native code starts slow and runs fast. You cannot have both from the first line. HotSpot’s answer, tiered compilation, has been the default since Java 7, and it works by never picking just one option. → Keep reading
→ What a Debugger Is Actually Talking To
The debugger locked up the first time I inspected a DataFrame mid-session, and it took me a while to believe that the box-drawing characters in a pretty-printed table were the reason. │ ─ ⋯ …, the kind of Unicode a DataFrame uses to draw its own borders, sent over the wire as part of a debug response. The connection did not crash. It just quietly went out of sync and stopped answering, which is worse, because nothing tells you why. → Keep reading
Background
EducationEBS Business School, SFSU, HSG
Experience20 Years Enterprise Systems
BuiltScipio ERP - ERP & Ecommerce System
Author"Start/Up - Set the net on fire"
JetBrains5x Plugins Published
Tech Stack
LanguagesJava, Python, JS, TS, Rust, Go, Swift, PHP
FrontendReact, Vue, Angular, HTML/CSS
DatabasesPostgreSQL, MySQL, MongoDB
CachingRedis, Memcached
Key Clients
EnterpriseL'Oréal, Amadeus, Konica Minolta, Orange
Digital1&1 Internet, Sedo.com, Creditsafe
PublicDRK, Kanton Basel, Aktion Mensch, Börsenverein
APOLLO TERMINAL v1.0 –
> █type '/help' for commands
← PREV NEXT → TOP ↑