-
A plea for lean software: 6 Lessons I learned to help keep software simple
Preface Recently, I was browsing the codebase of my company and saw that it has three versions of dashboards for an analytics page in it. I am pretty sure that customers don’t need that. This sparked something in my naive brain and I started exploring the internet for related ideas. That’s when I found…
“FAT, (or, –, 1., 10, 2., 3., 4., 5., 6., A, abstractions, acceptable, accommodate, accurately, add, adding, admiration., age-old, ago., aids, all, allows, also, am, an, analytics, and, any, appropriate, architecture, are, armies, as, at, available, away, baffling., be, because, become, belief, better, bigger, brain, browsing, built, bulky, But, by, can, cannot, cause, causes, changed, changes:, code, codebase, communication, company, compared, compiler, complex., complexity, components, conceivable, Conclusion, confidence, consider, consumed, continue, curtail, customers, customized, dashboards, decomposed, decomposition, degree, deletion, deliberately, deprecated, design, designed, designers, designing, detail, detailed, development, disagree, disciplined, discussed, does, doesn’t, Don’t, duplication., each, either, Enhanced, enough, entire, entirety, errors, essential, essentials., etc., even, every, expands, experience, exploring, explosion, extensibility, extensions, extent, faster, feature, features, fill, Finding, first, flexibility, following, for, foremost, form, found, from, functional, functionality, get, getting, goal, grows, hard, hardware, has, have, help, hierarchy, higher, holds, hope, how, huge., I, I’ll, ideas, if, ignored, important, improve, in, incompatibility, Incomprehensibility, increase, increased, individual, influenced, insanely, interfaces, Internet, into, introduction, irrelevant, is, It’s, it., justify, keep, keeping, key, kill, killed, languages, largely, laws, lean, Learned, least, lessons, Let’s, lies, like, live, machines, main, maintainability., Make, Making, me, measured., memory, methodologies, mind, minimizing, modern, modules, Monolithic, more, most, much, must, my, naive, need, needed?, needless, nerve, never, new, No, Not, now, number, of, on, one, order, original, outset., over, page, paper, part, passes, Patterns., people, pinpoint, place., Plea, PM, post, power, predominant., Preface, prerequisite, presented, pressure, pretty, primary, probably, problems, programmers, programming, proper, quantity becomes, rapidly, reacted, reason, Recently, reduce, Reducing, reflect, related, release?, remember, remove, rendered, required, requires, resonated, Resources, responses, responsibility, return, root., run, saw, seem, sell.”, sensitive, should, significant, similar, simple, simpler, single, size, slower, small, software, Solution, some, something, sophistication, sparked, specification, standard, started, state, step, Still, streamline, streamlined, Strongly, structures, suggested, sure, suspicion, system, systems., take, taking, teach, team, teams, than, than quality. Every, that, that’s, the, their, them., there, these, things, this, three, time., to, Today, toll, too., tools, topic, touch, true, two, typed, understood, unrecognized., us, usage?, use, user, versions, very, was, way, we, were, what, when, which, while, with, write, wrong., years -
Tracking Metrics to Surface and Solve Problems: Metric Tracking Practices I’ve Learned So Far
It is a nice pleasant evening, you are sipping coffee and reviewing your code one final time, just so that you can gather enough confidence to hit the deploy button. But a fact of life as a software engineer is that things can go wrong. Small changes may result in unexpected outcomes, including outages, errors…
(or, 1., 2., 3., 4., A, A/B, able, activity, adding, affect, all, also, an, and, any, APIs, Application, approach, are, areas, arise., as, at, automated, available, be, been, before, built, business, But, button., by, can, catch, changes:, checklist, checks, citizen, clients, code, coffee, collected, come, communication, Conclusion, confidence, configurability, continually, coverage, creating, customers, data, defines, deploy, deployment, design, designing, DevOps, directly, disciplined, do, Don’t, ease, either, Enable, engineer, engineers, enough, equipments., errors, etc., even, evening, everything., Examples, extensibility, eye, fact, feature, final, fire., first-class, folks!, following, for, from, functioning, gather, Go, handbook, have, having, health, Here, high, hit, I, I’ve, idea., impacting, impacts, importance, imported, improve, in, include, include CPU, including, industry, infrastructure, into, intuitions., involve, IOPS, is, It’s, it., items, just, keep, key, latency, latent, level, levels., leverage, life, limited, may, me, measure., measured., memory, method, metrics, multiple, must, need, needed?, negatively, nice, Not, number, numbers, occur, of, on, one, ones, only, organization., our, outages, outcomes., over, parts, pipeline, places., pleasant, points, problem, problem-solving, problems, process, processed, product, product-related, Progress, queries, quickly., random, rather, realize, really, receiving, relies, rely, remote, resolve, response, result, results, reviewing, right, runs, sales, see, sent, sipping, small, So, software, solve, spent, spikes, successful, surface, systems., task, Telemetry, test, than, that, that’s, the, these, they, things, Thus, time., to, toggling, too., total, track, tracked, tracking, transactions, unexpected, usage?, useful, validations, we, well, what, when, which, will, with, write, wrong., you, Your