15 ms·
Phrases in computing that might need retiring
- jeanlou 4y agoThis is so pretentious. I don't see any arguments in this piece.
- mark_and_sweep 4y agoREST is missing. Should be about hypermedia. Now means JSON API. See: https://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven https://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypert...
- mikewarot 4y agoTechnical Debt is a very descriptive term that everyone can relate to. The problem is we don't have a consensus on the nature of the interest on the debt, and what happens when it doesn't get paid back. In my opinion, most technical debt has usurious interest rates.
- john_the_writer 4y agoI laughed out loud at the "waterfall" with stand ups. Totally agree.
- doctor_eval 4y ago> "Agile: Nope, this one’s in the bin, I’m afraid. It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks”. We have to find a new way to discuss the idea that maybe we focus on the working software and not on the organisational bureaucracy…" Yup. :-(
- linker3000 4y agoSo true. I'm borrowing this!
- fnord123 4y agoSadly agree here. Maybe we can find a shibboleth. Or is there one and I don't know it!? Oh no!
- systemvoltage 4y agoMay be we should try 1990's style waterfall dev shop. Play Radiohead and Pearl Jam in the office. Everyone wears shorts + tennis shoes with super long white socks. Monthly powerpoint updates on how things are going, PM gets to have some fun with sharpie markers to tick off checkboxes next to each feature that was planned. Dedicated QA department, and they have the coolest arcade machine, it is the Street Fighter machine from 1 Arcade! Ritchie, one of the frontend devs, was able to hack it so it also accepts Doge coin. Morale is high. Project is over by October, 2 months early, and everyone hires a VW bus to go on a road trip. Customers are delighted and next year starts with another waterfall project.
- rtontic 4y agoYou made this sound so appealing, I actually want to work on a project like that now.
- varjag 4y agoFrontend devs? It's 1990s!
- doctor_eval 4y agoArguably - if you knew about RS232 and friends, were familiar with some terminal hardware (I knew more than I should have about Wyse 60s), understood the tty interface, and programmed using terminfo/termcap/curses… then you might be called a front end programmer from the 90s. Which, dear god, I just realised I was a front end programmer in the 90s!
- Ozzie_osman 4y agoWell, it's very difficult (and probably mis-guided) to throw away waterfall completely. In reality, most "not waterfall" approaches are just "smaller waterfalls" with less formailty. You still need some semblance of requirements (what you want to build), some amount of design, you need to implement, you need to test, and you need to maintain. Those steps could take months, weeks, days, hours, or minutes. And they could require a lot of written documentation with format reviews, a few discussions between people, or some thinking.
- doctor_eval 4y agoIn my world, the detailed design happens as late as possible, and is quite fluid, as we get feedback from the implementation. This is certainly my main take away from DDD. In waterfall as I understand it, each step is separated in time and team, and the feedback loop from implementation is lost.
- hyperman1 4y agoAFAIK, waterfall was always a straw man meant to knock down. Nobody sane ever did a pure waterfall model. The model came from http://www-scf.usc.edu/~csci201/lectures/Lecture11/royce1970.pdf http://www-scf.usc.edu/~csci201/lectures/Lecture11/royce1970... and describes it as risky in that very paper. Notice diagram 2 (the waterfall), 3 (the dream) and 4(the reality). We had expensive agile consultants coming in a bit after 2000. They were telling us the current official process, RUP, was waterfall, and we were completely misguided. Of course, this was a typical management-saves-face move: Devs were asking for using RUP as described (i.e. more iterative), even if managers expressly forbade the use of agile processes up to that point. RUP as intended was basically doing 2 to 4 week iterations, each a mini-waterfall (thou shall not call them sprints). Somehow, expensive consultants delivered an agile more waterfall than RUP. The actual value from RUP was a clear description of who does what, who requires what, and how do we call each part of the process. The Agile consultants saw no value in this, and gave us service based service service services implemented by services. We had standups reused as meetings to find out if service was meant as ITIL/SOAP/process/micro/business/something nobody ever heard of. This distinction was important so we could fill in all the important agile documents, which were not meant to be read by anyone, but filling them in was the only way us lowly peasants would not stray from the true golden agile path. Oh well, if there is an ASCII code for the END-OF-RANT character, you can place it here: <<EOR>>
- doctor_eval 4y agoHa, this is a good rant and I like it. Rational was all that and more in the 90s but ultimately AFAICT they were trying to make design into a coding exercise under a different name and with a fancy “language”; but that’s what code is for. Unfortunately my reality has been that some shops and some managers actually do believe that the process is design -> build -> deploy and that any errors or delays in step 2 are the engineering teams fault. I mean, they don’t say that bit out loud or anything.
- mywittyname 4y agoI remember working at a company whose "agile transformation" was a disaster, costing the company boat loads of money. After that, we used RUP because agile was a dirty word in that office. We even had posters and such on the walls praising RUP. Nothing actually changed. Standups became morning meetings, sprints were iterations, sprint review became feature review, and sprint planning became elaboration meetings.
- commandlinefan 4y agoThe term "waterfall", like the terms "capitalism" and "meritocracy", was coined to criticize the (previously unnamed) concept that it defined. "Waterfall" was Royce's term for the way software projects ended up being organically managed by people who weren't putting much thought into optimizing their organization. While I definitely agree that the "waterfall" style of "define everything up front, and then do all the stuff that you defined" is absolutely braindead, the alternatives are unfortunately even more braindead.
- tobych 4y agoPerhaps "API" could be added to this list. I've been jobhunting this week, and first I heard recruiters use "API" to refer to what I'd call a "service", then heard other quite senior developers do the same thing.
- srvmshr 4y agoAPIs, frameworks & libraries are so often being used interchangeably & its getting confusing for us too, specially if planning for a new feature to integrate "is it a framework? is it a library? is it a API" whenever I have a cursory glance at a product on HN/Github or likewise
- tpxl 4y agoI mean, a library has an API (the public facing stuff you're supposed to use), a framework probably also has an API (or rather, a bunch of them), and a service also probably has a Web API (assuming you're programming against said service).
- srvmshr 4y agoYes, but its not me getting confused. But the documentation is a mess many times
- OkayPhysicist 4y agoAPIs are simply a property of any system you want a program to interact with. The confusion comes from the synecdoche of referring to web applications that are only interacted with via their API as APIs. The more interesting one is frameworks and libraries. There's a gradient between them based, IMO, on how opinionated they are. Working with a framework means filling in the blanks, e.g. "When we recieve an http request to this endpoint, this application code should run" in contrast to a library which is just a barrel of functions to call. But that's a fuzzy line.
- manuelabeledo 4y agoSo victims of either gratuitous overuse, or complete disregard for the original meaning of the term. For instance, "agile" is rapidly becoming "just another way for management to track time and set OKRs". "DevOps" seems to be now "when a sysadmin is capable of writing infrastructure orchestration code".
- nly 4y agoDevOps engineering seems to mean "engineer who knows Java AND yaml"
- Blaine0002 4y agothats it?
- rendall 4y agoIf this were a comment on HN, I would give it one of my rare downvotes. It's dismissive and negative without any compensating value or positivity. Maybe suggestions of terms to use?
- fifilura 4y agoBut "this" is a comment on HN! Not sure you can downvote yourself though. Myself I don't have any downvotes so I can't help you.
- papito 4y agoOf all the stuff that is happening with technology today, especially with social media, this is what triggers you?
- txtsd 4y agoNot everyone is worried about the same things. Everyone lives in their own bubble.
- InCityDreams 4y agoGenuine question. Why bother downvoting, and not just move along? Perhaps there should be a button for 'disagree strongly'.
- jmfayard 4y agoThose are polar opposites. A button for 'disagree strongly' should upvote a comment. When Einstein and Niels Bohr 'strongly disagree' on quantum physics in 1927, they start a debate that makes both of them more enlightened. When a bullshit artist, who couldn't care less about the truth, hijack a discussion to make it all about Him (it's almost always a dude), everyone become dumber. "Moving along" is not enough because the amount of energy needed to refute bullshit is an order of magnitude larger than is needed to produce it. You need to actually downvote and hide it.
- 4y ago
- edrxty 4y agoStrong disagree on "technical debt" Rather, the entire world is built on it and there's some level of acceptance required, but we definitely need a shorthand phrase for "we're doing something stupid that will save us time now and make us hate ourselves a year from now" Edit: thinking on it, also "devops". It's really job title for "sysadmin but paid and owned by the software department to keep ITs fingers out of everyone's shit" but with a flashy name that sounds important so mgmt will agree to it. It's meaningless to us but it's a hyper-important industry term that saves us all a lot of suffering. It also must necessarily remain vague such that mgmt won't understand it and know to deny the posting. It's sorta like how snapchat used an obfuscated UI to keep parents out.
- abainbridge 4y agoSinister used to mean left handed. "A shambles" used to mean a slaughterhouse. Sanction used to mean allow, now it means not allow. It is fine for words to change meaning, even to their own opposite. Natural language has done that forever. Edit: you're all right, sanction has both meanings.
- formerly_proven 4y ago> Sanction used to mean allow, now it means not allow. It still means both, at least as a verb.
- OJFord 4y agoIt still means both as a noun, at least in the singular.
- tgv 4y agoWhile it's natural, I'm sure most words didn't change their meaning within a few years of introduction. > Natural language has done that forever. We've also "retired" words. On a large scale, as a matter of fact, so it's not really an argument against getting rid of "agile".
- hoseja 4y ago"Ell" used to mean arm.
- OJFord 4y ago> Sanction used to mean allow, now it means not allow. I can't sanction that description I'm afraid.
- arcade79 4y agoI like this definition, from wikipedia: "Pragmatic sanction, historically, a sovereign's solemn decree which addresses a matter of primary importance and which has the force of fundamental law" It has just been corrupted in various ways. It's no longer only a sovereign's decree, but any authority. It doesn't necessarily have primary importance. And the force it carries depends on the authority.
- silisili 4y agoOh man, I wish most of this would go away. RE: Agile 'We have to find a new way to discuss the idea that maybe we focus on the working software and not on the organisational bureaucracy, and that way does not involve the word…' Which is rather hilarious, because the only people I ever hear use the word agile are the beaurocrats. RE: DevOps, I still don't know what it actually means. When I first heard the term, it was used to tell us that us developers need to do our own operations. And we did. Cool. Then it turned into 'developers need to work with the operations people.' Wait what is this just a mantra or something? Now it's just a fancy word for 'sysadmin', apparently? I'd probably add 'microservice' or even 'service' to the list. It's become extremely apparent that very few people have any idea what they're doing or trying to express in that realm.
- fishbacon 4y agoDevOps has in my experience become full stack + server maintenance + misc tool development.
- silisili 4y agoAt my company, it's now just a term for the person who has full AWS access.
- quickthrower2 4y agoOpsec hates devops!
- Viliam1234 4y agoDevSecOps hate themselves
- jstx1 4y agoNot really fullstack if you ask me, more like deployment tools + cloud infrastructure maybe with a bit of glue code sprinkled in.
- 4y ago
- redbonsai 4y agoOk so ignoring something exists solves the problem? C’mon. Try harder.
- manuelabeledo 4y agoI don't think that's the point the author is trying to make.
- vjaswal 4y agoThe AI one is spot on, but could use more bile. But I'm stealing the last line on reasoning about software, "If Tony Hoare were not alive today he would be turning in his grave." Needs an entry for Crypto. Used to be cryptography, now it means ponzinomics, or something...
- throwntoday 4y agoI wouldn't mind if "blockchain" as a buzzword died out. A blockchain is almost never the solution to a problem. And I don't even understand the point if it isn't decentralized.
- fjdbeb76 4y ago"analogies suck and we shouldn't use them"
- peterkelly 4y ago"Full stack" (except when referring to someone who can do everything from CPU design and assembly programming right up to UI work)
- TT-392 4y agoI am an EE, that works with microcontrollers on a daily basis. I know some html I play around with sdl and ncurses a bit, I can do some internet stuff. I am clearly a full stack dev right?
- TT-392 4y agoOh, and I designed an UI for my smartwatch OS. For which I wrote everything from the ground up.
- tenebrisalietum 4y agoDo you have a microservices-based REST API with graphical frontend (web and Electron based) deployed/available on redundant cloud providers enabling secured, direct interaction with high- and low-level operations of your microcontrollers, such as environmental data gathering, software/firmware deployment and updates? That's a fuller stack. I probably missed some things.
- manuelabeledo 4y ago"Full stack" usually means "I'm proficient with React, so why wouldn't I be on Node?".
- 4y ago
- lbriner 4y agoI agree that DevOps is often misued but the example is misleading. Many organisations might recruit a DevOps Engineer who can build out a CD pipeline and train up existing Devs on how Devops works, how the tooling works and how the principles of DevOps work.
- Maxion 4y agoBut isn't that just a sysadmin? Or am I old for calling tiktoks vines?
- EntropyIsAHoax 4y agoAs a "DevOps Engineer" I strongly agree we need to stop using the term, at least as a job title. Where I work, I help automate our infrastructure management and develop tools that make it easier for product engineers to do DevOps, such as making monitoring solutions easier, injecting deployment credentials into CI/CD pipelines, abstracting certain common but complex architectures, etc... But at least half of the recruitors who contact me clearly expect me to be a glorified sysadmin who codes maybe one day a month. It's bad enough that I changed my job title on LinkedIn to "Software Engineer (DevOps)" which seems to have helped a little bit.
- abracadabra_ 4y agoSo a Platform Engineer, then. DevOps is not a role, it's not tools. It's a culture. Once the term is used outside of that, it has become useless.
- labrador 4y ago"Blah blah considered harmful", "code smell", "anti-pattern" I hate them because they've become slang for any code that isn't written the way we like
- ncmncm 4y agoAll patterns are anti-patterns. A pattern is just something your language is not expressive enough to capture and package in a library. If your language is evolving, what used to be patterns migrate into libraries. New patterns arise, and are later captured.
- gherkinnn 4y agoBest practice.
- chriswarbo 4y agoAlso describing any software as "modern". I find this especially amusing when it's used to describe things that are 50 years old (e.g. programming languages with "modern" features like type inference)
- deleted 4y ago[deleted]
- wheybags 4y ago"Continuous integration" just means "automated tests on every push", and no longer means anything much to do with integration, which I always found kinda funny. It sometimes even means automatic running of scripts that aren't even tests, like automatically generating html from markdown on push. You could say that's continuous deployment, not CI, but you'd be fighting a losing battle. The yml file you wrote to run the deploy, what do you call it? It's a "CI script".
- chriswarbo 4y ago> no longer means anything much to do with integration, which I always found kinda funny. I thought the point of CI was to avoid (what we would now call) long-lived feature branches; e.g. a team spending 6 months on their own copy of a codebase, then struggling to merge it back into the mainline when finished. In other words, CI isn't just about running tests on push; it's about the frequency of pushes, often several times a day. Perhaps it's a good thing that such practices have become so ubiquitous (largely thanks to DVCS) that we don't really think of the alternatives any more :)
- munch117 4y agoWhen the term 'continuous integration' was originally conceived, the point was to avoid branching altogether. It was not features branches that was the problem (there was no such thing at the time), the problem was synchronising work between groups that were working on different parts of the same application. So the original CI server concept was that everyone would get a nightly update. Having a branch run for even 2-3 weeks means that you are not practicing continuous integration ... as originally conceived. I'm not convinced that it's a good thing that you and so many others have stopped questioning feature branching.
- pards 4y ago>> Having a branch run for even 2-3 weeks means that you are not practicing continuous integration ... as originally conceived. Unless you're updating the feature branch from the main branch frequently (at least daily), thereby continuously integrating your code from the mainline. Problems arise when everyone's working on their own long-lived feature branch and the mainline doesn't move until they all try to merge their feature at the end of a sprint. Refactoring makes this worse.
- zasdffaa 4y agoI'll add 'UI/UX' or 'UX' when they're clearly discussing user interface alone. They seem to be treated as synonymous but aren't, and are a very strong sign that the person using them isn't good at UI because UI is substantially about clarity (at its core), or just none too bright and willing absorb buzzwords without understanding them. "The user experience (UX or UE) is how a user interacts with and experiences a product, system or service. It includes a person's perceptions of utility, ease of use, and efficiency" or "According to Nielsen Norman Group, 'user experience' includes all the aspects of the interaction between the end-user with the company, its services, and its products" from https://en.wikipedia.org/wiki/User_experience https://en.wikipedia.org/wiki/User_experience . and "In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine from the human end, while the machine simultaneously feeds back information that aids the operators' decision-making process ... User interfaces are composed of one or more layers, including a human-machine interface (HMI) that interfaces machines with physical input hardware such as keyboards, mice, or game pads, and output hardware such as computer monitors, speakers, and printers" https://en.wikipedia.org/wiki/User_interface https://en.wikipedia.org/wiki/User_interface If I were hiring for a UI role and found somebody talked about UI/UX but couldn't explain or distinguish the difference, that would be a strong mark against them.
- munch117 4y agoI would be happy to see 'UX' go and good old 'usability' make a comeback. Sometimes UX seems to be code for switching focus away from usability and over to styling. 'UX' is just too broad to be a useful term. You can't perfect every aspect of the user experience at the same time, you need to focus on one thing at a time, and for that you need more focused words.
- nonrandomstring 4y agoChanging words reflect worldly dynamics. Just as people use money to achieve aims there is a meta-game in etymology, beyond the communicative use of words. They don't just randomly change or 'evolve' as if by Dawinism. Coining a good phrase can make a business or career. Power comes through words. An interesting analog connects words to money. They are 'minted', by small groups or individuals, to serve a local need. They can be 'issued' by PR/news/sales people, spin-doctors and propagandists, or enter popular use through education or popular science. They lose their 'currency' like "coins that wear down and lose their faces". They are 'appropriated', taken and reused by other groups. They can come back into circulation as old ideas cycle round. Much of it is simply down to changing (and mostly improving) technologies. It doesn't make sense to talk about mainframes or peripherals in an age of "clouds" and tightly integrated handheld clients. But in computing I've also seen plenty of churn with meanings that reveal a battleground of ideas, frequently with near religious fervour. For example, wasn't "Object Orientation" more than a mere programming approach? A couple of decades ago it was heretical to talk of other paradigms. And yet, in some progressive circles to talk of 'objectification' is anathema. The rise and rise of "management", its constant, chameleon self-reinvention has muddied many waters. Many new meanings seem to grow from the bureaucratisation of society through code, a restless tendency toward make-work, anthropomorphism and even deification. The "cloud" is more than a mere model for computing infrastructure. At the very least I think its a political idea.
- tbronchain 4y agoI build infrastructures for small/medium size projects in a reproductible, code based, extensive and scalable way - usually cloud based. Businesses I work with need a quick and efficient solution to serve what they build, do not want to/cannot dedicate full time internal resources to it but require production ready setup that their developers are not qualified to build. Sometimes, they just require some guidance or validation. They like to call me DevOps. DevOps, SysOps, Sysadmin, Infrastructure engineer, Cloud engineer... The title doesn't matter so much, but what I like in the term DevOps is how it links the dev side to the infra side, as the infra itself ends up being already built in a cloud environment. I also believe there was a time when we needed to make a difference between traditional "Sysadmin" and developers who specialized in building cloud infra, but not anymore.
- laserlight 4y agoSo, just because people misuse the term, we should find a different term --- to be misused again? Agile is what agile manifesto defines. What the author defines sounds more like Scrum. And we can call the corporate BS, Jira-based development. Technical debt also has a very specific meaning, nothing about hobbyist programming at all.
- teddyh 4y agoYes and no. Whether or not you should use a word depends on whether the word will be understood to mean what you want to convey when you use it. If you mean “agile” in the original way, but people hear “agile” and think you mean the modern so-called “agile” (full of bureaucracy, and many people actually hate it), then communication will fail. Therefore, using the word “agile” will fail to aid in communication, and you should stop using the word for that. If you want to wage a campaign to change people’s understanding of the word, please do, and I wish you luck. But you can’t simply use a word and then pretend that the fact that people misunderstand you is somehow their fault.
- laserlight 4y agoFair point. Perhaps, “agile as in the manifesto” would be a way of conveying in a concise way the intended meaning.
- autoexec 4y agoI was expecting "master" and "slave" to show up since I've seen that argument being made (https://www.eetimes.com/its-time-for-ieee-to-retire-master-slave/ https://www.eetimes.com/its-time-for-ieee-to-retire-master-s...), but I have a hard time taking it seriously. I agree about AI though. The rush to exploit the phrase as a marketing term has killed it's original meaning. Once we actually have AI we're going to need something else to call it. I've always kind of liked the distinction Mass Effect made between Virtual Intelligence and Artificial Intelligence/Synthetic Intelligence, but I guess it's too late to start calling what we have now VI. Synthetic/Inorganic Intelligence is still on the table for the real thing though and it'd be better than something like AI+ or AI 2.0
- Dudeman112 4y ago>Once we actually have AI we're going to need something else to call it You mean Artificial General Intelligence? ;) On a more serious note, it is a shame that we ended up calling it AI instead of something innocuous like "pattern matching code". There's so much bullshit and misunderstanding that wouldn't be there if we had named it something less impressive
- b3morales 4y agoThis isn't really a problem of the term itself; it's more that people want their software product to sound impressive, so they borrow the term liberally. That is, it's marketing's fault. People have been arguing since Minsky or before where the "Actual Artificial Intelligence" line falls. Thermostats? Graphing calculators? Roombas? Software games? ...
- autoexec 4y ago> People have been arguing since Minsky or before where the "Actual Artificial Intelligence" line falls. I think it'll find a way to tell us. Same with people worried about giving AI rights. Once it cares enough to ask, it should get them.
- yccs27 4y ago
- bilekas 4y agoNot specific for computing but I hear it all too often and I would love to remove it from existence. > "Moving forward"
- ebingdom 4y ago> Reasoning About Software What's wrong with this? I need a way to describe techniques that make it easier to...well I don't even know another way to say it. Maybe I'm biased by my experience in formal verification, a field in which it's expected that you can formally study a program's behavior.
- turing_complete 4y agoIt should be replaced with the more accurate term 'handwaving about software'.
- TT-392 4y agoObject-Oriented Programming: "Luckily the industry doesn’t really use this term any more" Wait really? What world are they living in? Am I just out of touch or something?
- Banana699 4y agoBubbles. Software isn't just whatever the author's particular bubble happens to be. OOP is still very alive and well, mainly because an aweful lot of the most widespread languages are OOP, how can you talk about java and python without using OOP ?
- mattarm 4y agoOOP became a marketing term, but no longer sells designs, languages, etc. OOP alone used to be hot. Now it is either just assumed, or eschewed, or considered ambiguous. We’re getting there with FP, too. OOP…which kind? FP…which kind?
- TT-392 4y agoJust because it is not a selling point, doesn't mean people don't still use the term a lot. I used to only know C, OOP is still a relatively new thing for me.
- mypastself 4y agoPlease note that the author never specifies that their context is marketing or management. They instead use a far broader term, “computing”. It would be very difficult for huge swaths of developers to do their job without using OOP and other attendant terms.
- AndrewDucker 4y agoYou aren't out of touch. Some people are just living in bubbles. There's still a massive amount of Java, C# and other OOP work going on out there.
- ncmncm 4y ago
- psi75 4y agoAgile [...] It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks”. "Waterfall" is a straw man invented to sell Agile, which has evolved into a perverse, almost psychotic Taylorism... although I believe programmers themselves share a bit of fault in that. They assumed good faith on the part of the people managing them. That was not a wise move. Technical Debt [...] Now means whatever anybody needs it to mean if they want their product owner to let them do some hobbyist programming on their line-of-business software, or else. Uh, whose side is this guy on? Is he defending "product owners"? Is he saying we should forcibly typecast programmers to line-of-business grunts with no autonomy? If so, why should we take him seriously? If programmers aren't getting personal investment in their career by the top executives, then they have every right to do "hobbyist programming" that will increase their employability, and they shouldn't have to justify themselves at all in doing so. The fact that we've failed to reach tribal agreement on this is an embarrassment.
- cm2187 4y agoThought it would be more technical things like a TTL on an IP packet or a disc for storage.
- tomstuart 4y agoI do find “BDD” a frustrating term. It was coined by Dan North [0] to refer to a coherent set of sensible TDD practices — give tests expressive names, say “behaviour” not “test”, write executable “given/when/then” acceptance criteria — but in the intervening 16 years (!) it’s mutated into… I don’t even know what. There’s a community of “BDD” practitioners who talk about all sorts of ideas that aren’t necessarily even specific to software engineering. Which is fine and good, but it’s rendered the term essentially meaningless in a software context. These days I usually say “double-loop TDD” or “outside-in TDD” when I want to emphasise the use of executable acceptance tests; it’s impossible to predict what (if anything) “BDD” will mean to anyone. [0] https://dannorth.net/introducing-bdd/ https://dannorth.net/introducing-bdd/
- robsws 4y agoHard agree on AI, hard disagree on Tech Debt. The sheer force of opinion saturated into so few words made me smile :) My highlights: - OOP 'modules, but using the word class' - Agile 'It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks' - AI 'an algorithm pushed to production by a programmer who doesn’t understand it'
- bob1029 4y ago> AI 'an algorithm pushed to production by a programmer who doesn’t understand it' This is precisely how I read it too. The microsecond I hear a person say “AI” or “ML”, I’m thinking “oh ok so it’s untraceable, non-deterministic bullshit I’m gonna be held responsible for if I approve this.” Probably still net profitable to continue using this marketing language. Certainly does me a favor too.
- OkayPhysicist 4y agoI like defining AI as a catch-all for higher-order solutions. Rather than defining a specific process for taking in input and producing the desired output, you define a process for taking in input to produce a process that takes in input and produces the desired output. That ends up including a lot of boring applications, like SAT solvers, Bayesian statistics engines, as well as the more hip deep learning stuff. ML is the specific case where the inputs to both the higher level and base level processes are similar, and the goal is for the application to identify patterns to apply to specific cases.
- Iv 4y ago“psychologist/neuroscientist developing computer models to understand how intelligence works” is a very niche domain of artificial intelligence which has, for half a century, meant "the attempt to duplicate intelligence in algorithms"
- ribit 4y agoI am curious about this statement: [OOP] might mean ... “modules, but using the word class” I would argue that "modules" is almost as useless of a term as "OOP". What does the author mean exactly?
- qayxc 4y agoIt seems to me they mean to write statements for the sake of making statements. Nothing of substance there, just unjustified and undifferentiated drivel about language and the (lack-of) meaning of words.
- tenebrisalietum 4y agoI think modules are collections of methods unattached to a class/object.
- ncmncm 4y agoAuthor doesn't mean. Where the statement is accurate, if anywhere, the use of the term doesn't mean.
- quickthrower2 4y agoA lot of these are problematic because there was money - lots of it - to be made by misusing the terms. See “decentralised” for a good example.
- olalonde 4y ago> Luckily the industry doesn’t really use this term [OOP] any more so we can ignore the changed meaning. OOP is still a widely used term today. > It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks”. That doesn't sound waterfall-y at all. > If you can hire a “DevOps engineer” to fulfil a specific role on a software team then we have all lost at using the phrase DevOps. DevOps was never about eliminating all operations roles. It is about better cooperation between dev and ops. > This one used to mean “psychologist/neuroscientist developing computer models to understand how intelligence works” and now means “an algorithm pushed to production by a programmer who doesn’t understand it”. No, that's never what it meant. It was always a branch of computer science, going as far back as Alan Turing.[0] > Previously something very specific used in the context of financial technology development. Not at all. It was coined by Ward Cunningham[1] who happened to be working on financial software. The metaphor was never meant to be restricted to financial software. The fact he was working on financial software is largely irrelevant other than possibly having given him inspiration for the metaphor. > Was originally the idea that maybe the things your software does should depend on the things the customers want it to do. Now means automated tests with some particular syntax. Again, completely wrong. The article that introduced BDD was explicitly about automated testing.[2] [0] https://en.wikipedia.org/wiki/History_of_artificial_intelligence https://en.wikipedia.org/wiki/History_of_artificial_intellig... [1] http://c2.com/doc/oopsla92.html http://c2.com/doc/oopsla92.html [2] https://dannorth.net/introducing-bdd/ https://dannorth.net/introducing-bdd/
- ratww 4y ago> That doesn't sound waterfall-y at all. Sounds like an iterative approach to me. I think you missed the crux of the issue: in a lot of companies, Agile is definitely waterfall-ish, with a lot of pre-planning, design working a few sprints in advance, a lot of "getting it perfect" during PR reviews, no follow-up, no evaluating the work midway, no admitting failure and reverting it before finished, etc. > Having roles for operations is not incompatible with DevOps at all. I think you also missed the problem on this one. If you have "roles for operations" that doesn't involve development, it's not a devops role, it's just an operations role. Sure you can have devops in the mix, but someone doing operations exclusively isn't devops.
- hcrean 4y agoDevOps should really mean "Someone who builds systems and pipelines that allow developers to more seamlessly and sensibly deliver value to the end user". What DevOps actually means in practice is "We had someone without any operations knowledge build a system before someone with the correct design skillset arrived, you can't remove it or change it because it is business critical, your job is now to maintain this like a classical Sysadmin would". (I have been an Ops/DevOps engineer for slightly more than 15 years)
- samrocksc 4y agoThis dude's blog has more elitist bullshit than a kardashian orgy
- wink 4y agoIt's so wrong and also so right that I'm not sure if it's satire.
- jollybean 4y agoAI should have been called 'dynamic algorithms' or 'learned algorithms' from the start, so as to get rid of this ridiculous notion of 'intelligence' that confuses everyone. OO, DevOps are fine.
- mirntyfirty 4y agoI’d claim artificial intelligence has been broadened to the point of encompassing any statistical algorithm, regardless of whether it’s used correctly. I’ve seen rolling averages described as AI.
- henry700 4y agoThis is bait.
- kube-system 4y agoThere's a lot of people taking this article seriously, but I'm pretty sure this is satire: > So should we just abandon all technical terminology in computing? Maybe. Here’s an irreverent guide.
- lasereyes136 4y agoAI is the computer science term for some magic we will discover in the future. Once an AI technique becomes something real and useful it gets it's own name and is no longer AI. If we could all agree that AI just means something we don't understand yet, it might still be a useful term.
- oxff 4y agoHard agree.
- mannykannot 4y agoThe author left out "software engineer" - too close to the bone, perhaps, given his bio as presented below the article, but still a term that could easily be given the same treatment as any on this list.
- Volundr 4y agoUnder AI: > "actually a collection of if statements but last I checked AI wasn’t a protected term” This describes an Expert System which has been a form of AI since at least the 70s. If the author doesn't want it classified as AI it's the author that is trying to shift the definition, not that the definition has drifted.
- ryathal 4y agoI prefer an old professors definition of AI, "Computer research in commercially non-viable solutions." Anything AI discovers that is useful becomes rebranded into some other tech. Machine learning is the most recent thing that's starting to break out of the AI umbrella.
- lamontcg 4y ago> Agile > Nope, this one’s in the bin, I’m afraid. It used to mean “not waterfall” and now means “waterfall with a status meeting every day and an internal demo every two weeks”. We have to find a new way to discuss the idea that maybe we focus on the working software and not on the organisational bureaucracy, and that way does not involve the word… I've noticed that demos tend to lead to "demo driven development" model where software devs write code to impress other software devs, without any real connection to customers, and with the benefit of a decade of time most of those got dustbinned pretty quickly.
- nudpiedo 4y agoQuite disagree on almost all of them. What does OP mean by retiring a word? He and his colleagues are unable to use them in the right context? It's so easy to criticise everything and everyone by not matching some personal purity standards or pointing out at inconsistencies, but unless the audience is too young that critical aspect doesn't make you sound smarter, it just shows that either you got less real world experience or you aren't empathetic. Come on, the whole thing is a cheesy senseless post aiming to be provocative, the author even doesn't understand what technical debt is, and could be because of his professional background in menstruous organizations. In order to understand what agile is, in spite of not matching all of its original goals, one should try to see some old dinosaur alike companies and come back wishing any kind of cargo cult alike agile thing. Perhaps OP should start to see marketing powered fuzz-words as tools of social transformation that makes all of us evolve into a more "wise collective" by building a common culture, understanding and framework of thought to handle situations.
- Popeyes 4y agoNonce is UK slang for a peadophile, had lots of emails over the years and one of the system error messages would say "Nonce not found". Could be worse though.
- aiisjustanif 4y ago> But there is a potential for confusion with the minor but common usage “actually a collection of if statements but last I checked AI wasn’t a protected term” which you have to be aware of. Did someone call my name?