3 ms·
> Huh. I'd say the examples are perfectly good and on-point. While dealing with autoexec.bat and random BSODs wasn't fun, it's entirely orthogonal to the fact t
by blattimwind 7y ago
> Huh. I'd say the examples are perfectly good and on-point. While dealing with autoexec.bat and random BSODs wasn't fun, it's entirely orthogonal to the fact that a DOS-era POS still offers orders of magnitude better UX than current-era browser POSes, or than most web apps for that matter.
I know of an ERP system that somehow manages to take about 15 seconds to search an inventory of ~100k items. If you export all those items to CSV, with all their attributes (most of which are not searched), the resulting file is about 15 MB.
It is boggling how they managed to implement search this slowly (in a C++ application using MS SQL as the backend). 3.5 GHz computers, performing plain text string search at about 1 MB/s.
It is even more surprising that users feel this is not an completely unreasonable speed.
(They managed to pull this stunt off by completely not using the SQL database in the intended way, i.e. all tables are essentially (id, blob) tuples, where the blob is a zlib compressed piece of custom TLV encoded data. All data access goes through a bunch of stored procedures, which return data in accordance to a sort of "data extraction string". Search works by re-implementing inverted indices in tables of (word, offset, blob), where blob contains a zlib compressed list of matching IDs; again processed by stored procedures. The client then is wisely implemented using MS SQL's flavour of LIMIT queries which effectively cause a classic quadratic slowdown because the database engine literally has no way to fetch result rows n...m except by constructing the entire result set up to m.
Unsurprisingly the developers of this abomination claim to be competent. They also invented a funny data exchange format involving fixed field lengths and ASCII separators - some time in the 2010s.)
- Aeolun 7y agoI see you work in enterprise! I’m sure that all of this absolutely cannot be changed because all the functionality is needed for ‘something’.
- franga2000 7y agoTell me about it! A company I recently did maintenance for pays several thousand € each year for possibly the worst, most broken accounting software, despite not actually having an in-house accountant. The reason: one (1!) person in the company uses the software's (barely functioning) inventory feature and refuses to use anything else. They're currently considering my offer to develop a custom, pixel-identical system and just replace it without telling her. I could probably do it in a week because she only ever interacts with like 4 out of the at least 100 views the app has, but I suspect she'll catch wind of this and stop it. I don't actually know what she does there besides inventory, but she seems to have more power than anyone else below C-level.
- logfromblammo 7y agoThere was a time when I would have been interested in how such a system came to be, but now I think I have been around long enough to guess that someone was protecting their job, and then either got fired anyway or became technical-architect-for-life.