The Most Important Programming Invention In 20 Years

2024 ж. 9 Сәу.
15 920 Рет қаралды

We asked thousands of software developers what they thought was the Best invention or discovery in software development in the last 20 years, what have been the software development trends and software engineering technologies that have set the scene for software engineering in 2024?
In this episode, Dave Farley, best-selling author of “Continuous Delivery” and “Modern Software Engineering" explores the top 5 new software engineering technologies that have shaped how we work and gives his impressions on why and how these things have influenced the world of software development.
-
⭐ PATREON:
Join the Continuous Delivery community and access extra perks & content! ➡️ bit.ly/ContinuousDeliveryPatreon
-
🗣️ THE ENGINEERING ROOM PODCAST:
Apple - apple.co/43s2e0h
Spotify - spoti.fi/3VqZVIV
Amazon - amzn.to/43nkkRl
Audible - bit.ly/TERaudible
-
👕 T-SHIRTS:
A fan of the T-shirts I wear in my videos? Grab your own, at reduced prices EXCLUSIVE TO CONTINUOUS DELIVERY FOLLOWERS! Get money off the already reasonably priced t-shirts!
🔗 Check out their collection HERE: ➡️ bit.ly/3vTkWy3
🚨 DON'T FORGET TO USE THIS DISCOUNT CODE: ContinuousDelivery
-
🔗 LINKS:
From Linus to GitHub ➡️ / from-linus-github-fun-...
Coding on Copilot ➡️ www.gitclear.com/coding_on_co...
Gregor Hohpe's Engineering Room Episode ➡️ open.spotify.com/episode/5kz4...
-
BOOKS:
📖 Dave’s NEW BOOK "Modern Software Engineering" is available as paperback, or kindle here ➡️ amzn.to/3DwdwT3
and NOW as an AUDIOBOOK available on iTunes, Amazon and Audible.
📖 The original, award-winning "Continuous Delivery" book by Dave Farley and Jez Humble ➡️ amzn.to/2WxRYmx
📖 "Continuous Delivery Pipelines" by Dave Farley
Paperback ➡️ amzn.to/3gIULlA
ebook version ➡️ leanpub.com/cd-pipelines
NOTE: If you click on one of the Amazon Affiliate links and buy the book, Continuous Delivery Ltd. will get a small fee for the recommendation with NO increase in cost to you.
-
CHANNEL SPONSORS:
Equal Experts is a product software development consultancy with a network of over 1,000 experienced technology consultants globally. They increase the pace of innovation by using modern software engineering practices that embrace Continuous Delivery, Security, and Operability from the outset ➡️ bit.ly/3ASy8n0
TransFICC provides low-latency connectivity, automated trading workflows and e-trading systems for Fixed Income and Derivatives. TransFICC resolves the issue of market fragmentation by providing banks and asset managers with a unified low-latency, robust and scalable API, which provides connectivity to multiple trading venues while supporting numerous complex workflows across asset classes such as Rates and Credit Bonds, Repos, Mortgage-Backed Securities and Interest Rate Swaps ➡️ transficc.com
#softwareengineer #developer

Пікірлер
  • After spending the first 20 years of my career doing "waterfall" development, I would say that the agile approach to software development is by far the greatest gain. Getting management/PMs to accept and embrace change is HUGE. I've been writing code for a living since 1981, so I've lived through a LOT of change in the SW dev world. Online resources as opposed to having to buy and read massive programming books was also a game changer.

    @garrysimmons111@garrysimmons111Ай бұрын
    • True, but agile is from the early 00s - not part of the last 20 years. Git is just barely part of it still.

      @NostraDavid2@NostraDavid2Ай бұрын
    • and the xp root of agile goes back to the start of personal, interactive computing (smalltalk, flex, sketchpad) and the scrum root to lean (tqm, tps, sqc, scientific management). the sad thing being that agile and even software development have turned into a pop culture. i mean who still knows that oop is an approach to extensible languages by which programmers create dsls in which users can build their own applications? the term „continuous delivery“ is one of the problems because it’s distracting from „continuous improvement“, one of the core lean principles.

      @m13v2@m13v2Ай бұрын
    • Could you elaborate on the online resources part?

      @skyhappy@skyhappyАй бұрын
    • @@skyhappy I think that he is referring to documentation which I agree is game-changing compared to the old days of having to buy books and hope that the book was good. Also, we have online playgrounds for learning to code and trying out even regex.

      @GDScriptDude@GDScriptDudeАй бұрын
    • I am in SW since 1991. Been in fixprice projects until 2018. And I'd say that the only true reason for agild was named by Uncle Bob Martin: bunch of testosterone driven undisciplined inexperienced young men.

      @alexanderpodkopaev6691@alexanderpodkopaev6691Ай бұрын
  • It is better to use a word "Containerization" instead of "Docker", because you can use containers without the docker.

    @vladimir0rus@vladimir0rusАй бұрын
    • also I would not mix github with git, there are 2 different things and of course there are other platforms that do cloud git wrapping + other services such as CI/CD + task management like gitlab & bitbucket

      @carnicer78@carnicer78Ай бұрын
  • Maybe it goes back slightly more than 20 years, but I would definitively say online training videos. Learning tutorials, standards, pitfalls practices, all that stuff is amazingly easier than it used to be. Or maybe that's included in "cloud". Although it is a bit of a double-edged sword, I think the lowered barrier to learning is by far the best improvement in programming.

    @mhzprayer@mhzprayerАй бұрын
    • On the other hand software development has become more complex in other ways, for example security was not something most developers worried about in the late nineties.

      @krumbergify@krumbergifyАй бұрын
  • I'm slowly warming up to the idea that Nix is the mature docker you're talking about.

    @THEMithrandir09@THEMithrandir09Ай бұрын
  • Git was not first distributed, not first non-linear version control. But it was the first distributed, non-linear and with good performance

    @qj0n@qj0nАй бұрын
    • Why? Because C, good design, and Linus.

      @siyabongampongwana990@siyabongampongwana990Ай бұрын
    • @@siyabongampongwana990 true, though Mercurial developed in the same time by other Linux team is pretty good as well. And also one might argue that BitKeeper, which was used previously by Linux kernel was such too, just not open source. That being said, git is a good distributed non-linear system, but not everybody need this kind of system. Especially in companies, linear, centralized system might be better

      @qj0n@qj0nАй бұрын
  • Hi Dave. I'm the one / one of the ones who answered your question with "software-defined networking". The reason is that you asked for developments in the last 20 years. Other features of cloud computing (virtualisation, renting compute time, etc.) were invented more than twenty years ago. But I can't imagine cloud platforms without software defined networking.

    @NatPryce@NatPryce27 күн бұрын
  • Docker is above LLMs because it solves the problem of trying to set up certain AI/ML stacks on your local system without going insane in the first place

    @jassiralgossara7832@jassiralgossara7832Ай бұрын
  • I missed the questionaire, but I do think that Rust programming language is an import development. It being the first language that is both efficient and has fundamentally solved memory leaks and race conditions. And that it has solved these issues simply by using the features of a powerful type system is mind-blowing. It will take some time to grow in popularity, but I think Rust has a very bright future ahead.

    @TheEvertw@TheEvertwАй бұрын
    • This is great to hear, since the name itself implies slow self destruction over time, lol

      @mhzprayer@mhzprayerАй бұрын
    • @@mhzprayer No, rust does not self-destruct. It is quite stable.

      @TheEvertw@TheEvertwАй бұрын
  • USB-powered single cup coffee maker gets my vote.

    @bretthagey7916@bretthagey7916Ай бұрын
  • As a C# Developer, something missing from containers is F5 into the container and F5 into the cluster.

    @chakala2149@chakala2149Ай бұрын
  • LLMs are indeed interesting, but I'm not at all sold on whether they're the biggest thing in the last 20 years. Similarly, when I look at teams using Docker and K8S, it seems like they spend a very significant portion of their time troubleshooting Docker and K8S rather than building solutions to customer problems. 😀

    @daverooneyca@daverooneycaАй бұрын
    • If team understands how docker or k8s work, it can solve a lot of problems for them. But far too often people assume they can read some quick introduction and will look for solutions when they have a problem. And then they have a huge mess everywhere, problems start happening at random and no one can find their root cause without huge cleanup

      @qj0n@qj0nАй бұрын
  • There's no one on the face of the earth who hates Perforce more than me. I've lost days of coding changes and then been victim blamed saying I probably hit a wrong button. I've lost weeks of work because perforce SAID it synced changes but just decided to leave some files in a bad state. It is the only software product I know where killing the process in task manager is basically a daily requirement.

    @LucTaylor@LucTaylorАй бұрын
  • As a developer, I approve of the t-shirt

    @beck4715@beck4715Ай бұрын
  • Git is a really game changer.

    @sergenalishiwa9097@sergenalishiwa9097Ай бұрын
    • Freaking Linus came up with Linux AND Git An interview of Farley with him would be awesome

      @rothbardfreedom@rothbardfreedomАй бұрын
    • Git was a game changer for open source (though to be honest, Mercurial developed at the same time by another Linux kernel team would be good to) But in enterprise environment, its design choices are far from perfect and promote useless practices like excessive playing with branches, contrary to linear version control like p4s or tfs, which promote something more like trunk based development. Some features were developed in git to overcome its drawbacks - like git lfs or submodules, but these are clunky and often not supported by tooling... Probably, if open source developed a good alternative focusing on enterprise, not open source, it might take off. But open source develop from perspective of open source, so it won't happen ;)

      @qj0n@qj0nАй бұрын
  • Dang you're right - - I should have specified *modern* mechanical keyboards. Thankfully more and more people are discovering their value 😊

    @tomhassomethoughts@tomhassomethoughtsАй бұрын
    • I hate them, they are noisy! I want a touch surface ergonomic keyboard!

      @banatibor83@banatibor83Ай бұрын
    • @@banatibor83 there are plenty of silent mechanical keyboards kzhead.infoJF7ilXOPzv0?si=044CdWOALcLF20iY

      @tomhassomethoughts@tomhassomethoughtsАй бұрын
  • What is your take in TDD vs ODD? where ODD stands for observability driven development

    @edgardcz@edgardczАй бұрын
  • 8:59 we don’t have a cloud based language yet. In the same way that we can easily invoke any functionality of a local PC from the one program, in theory we should be able to do the same across multiple PCs. We shouldn’t need infrastructure configuration and docker files and kubernetes files. They could all be managed within the code.

    @br3nto@br3ntoАй бұрын
  • What?! The best invention was SAFe! 😏

    @rao180677@rao180677Ай бұрын
    • 🤣🤣🤣 No!

      @ContinuousDelivery@ContinuousDeliveryАй бұрын
    • LoL

      @banatibor83@banatibor83Ай бұрын
  • Total agree with git being number 1 but I'm amazed REST API's and JSON did not appear anywhere on the list!?? Along with git the first time I read about and tried REST it was so obviously the correct approach especially compared to what came before. 3rd for me was CI/CD using gitlab more than github tbh, those three paradigm shifts have had massively the biggest impact of software development in the last 10-15 years

    @2k10clarky@2k10clarkyАй бұрын
    • I agree that both have been amazing, but they're also part of the early 00s - not part of the last 20 years.

      @NostraDavid2@NostraDavid2Ай бұрын
    • REST and JSON, that is.

      @NostraDavid2@NostraDavid2Ай бұрын
    • @@NostraDavid2 Doing some checking JSON and REST API's look to have been totally bleeding edge new technology in the early 2000's (JSON proposed and named in 2001 and Ebay the first commercial REST API in 2001/2 closely follow by amazon and flkr in 2004) by the mid 00's they were gaining some traction so I think its reasonable to include them in the last 20 years timeframe.

      @2k10clarky@2k10clarkyАй бұрын
    • Side note, git is pretty long in the tooth now, first release 2005 so 19 years ago now

      @2k10clarky@2k10clarkyАй бұрын
    • I don't know. There is nothing good about JSON except it's universal adoption. I'd prefer something like gRPC to take the place of REST.

      @gzoechi@gzoechiАй бұрын
  • Saw a conference not a long time ago that churn rate doubled after LLMs. Now, I don't know how accurate is that number (it might be quadrupled, depending on the scope), but I know one thing: the amount of shit code I am starting to see in my project portfolio has increased to the point where I can spot when a developer copy pasted more or less some shit from Chat GPT.

    @ForgottenKnight1@ForgottenKnight1Ай бұрын
  • I just like C++ Builder and Delphi for it's RAD implementation for the last 30 years. Because of this, I don't use Microsoft or opensource tools.

    @colinmaharaj50@colinmaharaj50Ай бұрын
  • Reactive programming has led to widely unreadable code and nearly impossible to maintain projects which still cost my company after 10 years and also the next 10. It is nearly impossible to improve or add new features.

    @NachtmahrNebenan@NachtmahrNebenanАй бұрын
    • And I must add this, those conceited developers are like "but this one goes to eleven".

      @NachtmahrNebenan@NachtmahrNebenanАй бұрын
    • It's always fascinating how severely people can butcher good stuff. Reactive programming makes really complicat stuff quite simple

      @gzoechi@gzoechiАй бұрын
    • Are you using one of those JavaScript Frameworks like Angular?😂 in flutter it is really awesome

      @ForChiddlers@ForChiddlers29 күн бұрын
    • @@ForChiddlers Both are awesome

      @gzoechi@gzoechi29 күн бұрын
    • @@gzoechi can you point me to a video, where I can understand why Angular is awesome?

      @ForChiddlers@ForChiddlers29 күн бұрын
  • Stack Overflow

    @gandralf@gandralfАй бұрын
    • How long to boil an egg

      @Mark73@Mark73Ай бұрын
  • Stack Overflow 😂

    @michaelhughes8413@michaelhughes8413Ай бұрын
  • I mostly dropped Docker for Nix

    @gzoechi@gzoechiАй бұрын
  • This video clearly illustrates the difference between someone who develops software vs who mostly does white board design.

    @williamsloan7857@williamsloan7857Ай бұрын
    • Not sure what is meant by this comment. Rather than providing actual feedback you only gave a vague remark. What exactly illustrates this "difference" you speak of and what is your perspective?

      @iPwnPancakes@iPwnPancakesАй бұрын
    • “Clearly illustrates” Provides no clarifying specifics.

      @JeremyStein1234@JeremyStein123429 күн бұрын
  • Open source development.

    @adrianojordao4634@adrianojordao4634Ай бұрын
    • Well, that's far older than 20 years

      @qj0n@qj0nАй бұрын
KZhead