![]() ![]() They can all be proven in a one-hour product demo. These are falsifiable statements either the software does these things or it does not. ![]() Fine-grained access and security controls.Weekly and monthly reporting at multiple levels.Integrates with Delivery Pro, Supply Chain Plus, and Super Point-of-Sale systems.Tracks inventory across multiple warehouses.Its marketing materials will consist of several high-res stock photos, a bold color palette, and statements like the following: Take an inventory management app as an example. To businesspeople and customers, software is a list of features. However, it’s not the way software is packaged, marketed, or sold. Software is envisioned by engineers as networks of interacting components, inputs, and outputs. Speed is a feature, reliability is nothing So instead of relying on the myth of laziness to explain slow and buggy software, we should be asking “what widespread forces and incentives are creating an environment where it’s hard for software engineers to do their best work?” But I strongly believe it’s the natural human state to work hard and make excellent things, and we only fail to do so when something repeatedly stops us. ![]() Prokopov’s answer is “software engineers aren’t taking pride in their work.” There’s some truth to that. We could find new ways to compress assets. We could write tiny, purpose-built libraries. We could make them faster, probably by orders of magnitude. At the very least, there are optimization opportunities in almost any modern app. And exponentially larger without a corresponding increase in value. Most developers know better than to say things like “it’s a smartphone OS, how hard can it be?” or “my spreadsheet app in the 90s was 10 kilobytes, how come Factorio is a full gigabyte?” If you weren’t there when it was built, you can’t reliably estimate all the hard knocks and complexity that went into it.īut that doesn’t mean there’s no room for objective criticism. The aforementioned posts on this subject come across as about 80% fair and reasonable criticism, 20% out-of-touch grumbling. DOOM, which came out in 1996, can run on a pregnancy test and a hundred other unexpected devices meanwhile, chat apps in 2022 use half a gigabyte of RAM (or more) while running in the background and sometimes lock up completely, even on high-end hardware. Among people who write about software development, there’s a growing consensus that our apps are getting larger, slower, and more broken, in an age when hardware should enable us to write apps that are faster, smaller, and more robust than ever. It called to mind Maciej Cegłowski’s post “ The Website Obesity Crisis” and several others in the same vein. I recently stumbled upon “ Software disenchantment,” a post by Nikita Prokopov. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |