Asking a 1,000 Developers What They HATE About Software

  Рет қаралды 27,055

Continuous Delivery

Continuous Delivery

Күн бұрын

Пікірлер: 210
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
If you enjoy discussing ideas, issues, problems and even frustrations! with fellow IT guys, join us on my CD Discord via 🗣 bit.ly/ContinuousDeliveryPatreon and see lots of other membership benefits, exclusive content and competitions.
@johnpritchard7591
@johnpritchard7591 Жыл бұрын
As opposed to really listening to the people doing the actual work, hiring external consultants to come in tell you where you're going wrong, introduce some scaled Agile nonsense, shoehorn existing managers into roles they don't understand, then bugger off...
@bobbycrosby9765
@bobbycrosby9765 Жыл бұрын
I hate that people treat abstractions as "free". I hate it when explicit coupling is replaced with implicit coupling then call it "fixed". Actually, it's worse now.
@jkf16m96
@jkf16m96 Жыл бұрын
At the end they're never free. It always adds overhead, either at the compilation stage or at run time. Personally I prefer compilation overheads
@danielgilleland8611
@danielgilleland8611 Жыл бұрын
You're not dogmatic, Dave. You're just telling us the stories about how you got those bruises and why you'll "never do that again!"
@prouttralala
@prouttralala Жыл бұрын
in my current job what I hate the most are : lack of documentation or documentation that is disseminated on multiple servers, not connected, copy paste of the same code over and over, 1 occurrence per customer each time with a slight modification that cannot be added the the previous code, and most of all: specifications that change during the acceptance test.
@yudisupriyadi8475
@yudisupriyadi8475 Жыл бұрын
agree with lack of doc, sometime the code for a feature spread across files, heaven if they are connected by "import" so I can jump easily, unfortunately, they are not. I spent hours just to make sure small changes i made are safe to be deployed after I read the rest of code. Tasks something like these several times give me some anxiety.
@kayakMike1000
@kayakMike1000 Жыл бұрын
Most languages have copy paste built-in. It's called libraries and linkers.
@aaronbono4688
@aaronbono4688 10 ай бұрын
Get used to it because this has always been a problem and is always going to be. Developers hate writing documentation and managers hate paying for it.
@rzabcio3
@rzabcio3 Жыл бұрын
I love your comment about Jira. Beside developer/devops I am also Jira administrator for our 1k employee company (or to be precise all Atlassian apps administrator). I believe my most important task there, one could say crusade even, is to SIMPLIFY as much as possible -- workflows, custom fields and other Jira constructs. The thing is, often project/team leaders and/or PMs decide and design Jira project/workflow settings. And you wouldn't believe how many times I have to explain that something is too complicated, tiresome for users and/or just needless. That's what GOOD Jira administrator should do -- defend user from overwhelming management bureaucracy. Sometimes they agree, sometimes they come back after some time saying "you were right" but... in most cases I talk to a brick wall ("we are used to work like that", "you do not work with customer, you don't know realities"). So, remember, guys, that after every badly configured Jira project, there is some person/s who wanted it to be like that. Do not evaluate the tool. Because Jira is just a tool -- nothing more, nothing less. Also, remember that Jira has pretty great REST API, accessible for EVERY user (because web UI uses it), so you could automate almost everything! I've seen many teams writing their own scripts or even whole GUI apps, accelerating their tasks. :)
@dougr550
@dougr550 Жыл бұрын
We're only at about 150 people in Jira but even at that scale the answer is that delivery teams don't get to create their own Jira projects. We have 3 admins who create any new projects and have a base template/standard workflows that every project has. If people want customizations on top of that they can have them, but our admins get the chance to ask why and what problem it solves.
@gilgamecha
@gilgamecha Жыл бұрын
I partly agree with your defence of the tool but I still criticise the design decision and culture of JIRA which encourages chaos and delegates the power to create chaos much too widely.
@rzabcio3
@rzabcio3 Жыл бұрын
​@@gilgamecha agreed, but still this is evaluating a tool. Look, cars are also designed to "encourage chaos" and even kill people. But we don't see deadly road havoc, do we? And even if, it's not on daily basis and in most cases (often?) caused by drivers, not cars themselves. And one could go on and on with such examples.
@zwc76
@zwc76 Жыл бұрын
I've seen "waterfall" work, and it's under medical appliances. The process there really have to be rigid in order to conform to medical standards. Can't really do "fail fast" on something that controls your heartbeat.
@jkf16m96
@jkf16m96 Жыл бұрын
Develops the code for the pacemaker Passes QA tests Demo with living patient He dies because the initial requirement was wrong They send the feedback to fix it
@nickbarton3191
@nickbarton3191 11 ай бұрын
The problem with frameworks is longevity of support. .NET is a good example, the transition from software built on .NET Framework costs.
@KA-wf6rg
@KA-wf6rg Жыл бұрын
Jira exposes bureaucracy == 100%. And by the way Dave, I love hearing how you present your positions. It makes me want to explain my positions in a way that is calm, well thought out, and non-defensive. I think, and hope, some of that comes with years of experience and realizing all the silly things we can get attached to and argue about are not as important as we think they are.
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
Slow dev environments. We should code at the speed of thought.
@7th_CAV_Trooper
@7th_CAV_Trooper Жыл бұрын
Eww. That would be messy.
@ChaosturnMusic
@ChaosturnMusic Жыл бұрын
Why?
@7th_CAV_Trooper
@7th_CAV_Trooper Жыл бұрын
@@ChaosturnMusic because the brain isn't linear and thought patterns are unorganized. The act of coding is the process of organizing thought into something tangible. Also, people mostly think about food and sex. That might be confusing for the mind reading computer.
@familyshare3724
@familyshare3724 Жыл бұрын
It's called vi. Sounds like vee eye. :)
@mhzprayer
@mhzprayer Жыл бұрын
I hate the pace which software is expected to be delivered without incorporating a lot of time to learn and experiment. Most times we don't know the best way to do something. We just figure out SOME way and we have to move on bc the amount is so much. There isnt time to reflect or refactor very often.
@tieTYT
@tieTYT Жыл бұрын
I strongly dislike working with developers with an extremely high tolerance for risk and inefficiency.
@tristanmills4948
@tristanmills4948 Жыл бұрын
Leetcode. Tells you nothing about how someone is as an engineer, but it's ubiquitous. It's a lazy interview technique which shows no thought into what you actually want from an engineer.
@sanderdejong66
@sanderdejong66 Жыл бұрын
8:33 My code using libraries vs. my code shoehorned into a framework. Great insight!
@krumbergify
@krumbergify Жыл бұрын
I was fortunate to join my current project early and I managed to get a load of linters, code formatters, static code analysers and test tools in place before a lot of code was written. Doing this takes care of so much needless code reviewing about style and stops simple bugs before they reach the codebase.
@logiciananimal
@logiciananimal Жыл бұрын
I really like the idea that Jira is a "bureaucracy exposer". I'll have to remember that when I explain to newcomers why our Jira is so weird.
@Flamechr
@Flamechr Жыл бұрын
You use home grown jira plugins too 😂 it is a nigthmare with just the marked plugins
@logiciananimal
@logiciananimal Жыл бұрын
@@Flamechr Fortunately not - I'm an application security guy and that frankly would give me even more nightmares.
@eyesopen6110
@eyesopen6110 Жыл бұрын
Jira is garbage. Its destroyed tech work entirely.
@Galakyllz
@Galakyllz Жыл бұрын
We recently moved to using ADO and the first tour of the product showcased how awesome it is for product owners and scrum masters. I was just blown away by how much the tour was aimed far more at management then the actual developers. There are so many ways that it could be a better development aid, but it just isn't meant for that. It's a tool for bureaucracy, 100%.
@tiagodagostini
@tiagodagostini Жыл бұрын
I used to be only developer, but then started a new company and now I understand why something alike Jira is NEEDED. You cannot ever justify anything to your investors without it.
@TimJW
@TimJW Жыл бұрын
I've just told the team I am temporarily looking after to ditch their k8s cluster. They're data engineers primarily, don't have the skills administer the cluster well, and they're writing a batch processing application....they were spending more time faffing with the cluster rather than solving the customer's problem.
@Immudzen
@Immudzen Жыл бұрын
I can completely understand this problem. I have seen some complicated and slower microservices stuff to handle things where it made no sense at all. Like basic HPC calculation stuff.
@centerfield6339
@centerfield6339 9 ай бұрын
How can you do data stuff without ArgoCD on k8s? Not possible.
@brownhorsesoftware3605
@brownhorsesoftware3605 Жыл бұрын
On the subject of shiny things: back in the early 80's when I was working in banking writing ATM networks an MBA decided to program a weekly business accounts summary in APL. He showed the auditor how to run the program which took hours to run and brought the mainframe to its knees. I could not watch this so I wrote the report in a scripting language and gave it to operations to run every week. The auditor was eternally grateful. The MBA took me across the hall into the bank vault and balled me out for being unprofessional.
@markhathaway9456
@markhathaway9456 Жыл бұрын
"No good deed goes unpunished." Right?
@brownhorsesoftware3605
@brownhorsesoftware3605 Жыл бұрын
@@markhathaway9456 The story of my life.
@rursus8354
@rursus8354 11 ай бұрын
Just a small comment: I'm a programming teacher, so I don't suffer these market obfuscations, but I'm very much interested in what works, what doesn't work, and the conditions for improvements, so these kinds of surveys are very important for me: thanks Dave! Keep the good work up! And thanks a lot, all commenters on Dave's Xweet!
@moestietabarnak
@moestietabarnak Жыл бұрын
As an embedded programmers working with firmware, drivers, low-level stuff..... I hate the way the web people (or hr?) created the 'fullstack' concept.. as doing web from server to front-end is the WHOLE and any kind of computing...!
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
I agree that it is a widely abused idea, did you see this video on that topic? kzbin.info/www/bejne/oKG1haKkgah0oM0
@errrzarrr
@errrzarrr Жыл бұрын
It's a HR concept rather than CS concept
@christianbenesch1
@christianbenesch1 Жыл бұрын
the pull request idea is gatekeeping, i.e. when you haven't got a proper automated test suite with reasonable coverage or tests at all.
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
Spaces versus tabs. The hypocrisy of it. Ignore good design and architecture but make sure your code all lines up. Ugh! Gnats versus camels.
@7th_CAV_Trooper
@7th_CAV_Trooper Жыл бұрын
Editorconfig and CTRL+K+E. Problem solved. Now you're freed up to discuss the business domain.
@aaronbono4688
@aaronbono4688 10 ай бұрын
My biggest hates, move fast and break things which translates to I want to be stupid and sloppy, node and git, that over-engineered and ridiculously complex version control that you can't use properly without a command line. I will give an honorable mention to the vile editor only because I'm not forced to use it.
@1oglop1
@1oglop1 Жыл бұрын
I love how you talk about architecture, yet in my 10 years of working I have met only 2 people capable software architects. So the problem is IMO rather simple 90% of developers are poor architects because it is not a commonly taught skill. You'd find in beginner tutorials, etc.. I am not a good architect myself and that makes it even harder to educate others about the problem or push for the better change.
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
It is a tough problem, and I agree, the problem is that it is poorly taught, and we don't value it enough as a skill. Good architects are scarce, but the good ones make a big difference. I'd recommend Gregor Hohpe's stuff kzbin.info/www/bejne/m37VnnSkaMeMn6s if this is a topic that interests you, and this: kzbin.info/www/bejne/e52wn3t6iKuUedk
@turn1210
@turn1210 Жыл бұрын
In my opinion it’s more of a mindset than a skill that can be taught, and yes, good architects are as rare as hens teeth
@banatibor83
@banatibor83 Жыл бұрын
Start with design patterns, they will help to learn seeing patterns and object oriented design will help you to learn how to identify boundaries. Eventually your understanding starts to scale up, from one module to a couple of modules, then to a whole service, bunch of services, to a whole software system. Excellent book is Domain-Driven Deign by Eric Evans, after you have some insight into object oriented design, this book will level up your architectural skills.
@thewiirocks
@thewiirocks Жыл бұрын
It’s a poorly taught skill because it goes against everything we teach brand new developers. Look at Tibor’s response. He’s telling you to learn Domain Driven Development. While that can be a useful tool, it’s completely orthogonal to being a software architect. If we want good software architects, we have to get out of the mindset of “here’s your hammer, keep hitting the code until it works”. The job of a software architect is to look at the toolbox, think about what advantages and disadvantages each tool brings, and then design the system around the goals for the software/hardware solution. That requires a lot of knowledge and taking the time to understand *why* each technology exists. For example, you should NOT use an SPA unless there’s a distinct benefit to remaining within a single, unchanging interface. That interface must be complex enough to justify the overhead as well. Yet most so-called architects use “popularity’ and “shiny hammer syndrome” as shortcuts for critically evaluating the technologies. And that’s why so many projects suffer under the use of an SPA framework like Angular or React. That’s just not the way the average developer thinks or is taught to think. If they think at all. There are so few qualified software engineers that the industry is obsessed with trying to use less qualified people to do more work. But I honestly think we’ve exceeded any and all returns on that plan. We need to contract back to capable engineers and focus on better quality software that takes less time to write. Order of magnitude improvements in productivity are possible. I’ve achieved them in teams as an architect, hitting as high as 100x performance. (TWO orders!) But it requires discipline and deep knowledge of what you’re doing.
@vasilikimanoli9285
@vasilikimanoli9285 Жыл бұрын
Wait until AI takes over software development. Trained on the latest code trends. Then you will see some really bad code.
@BryonLape
@BryonLape Жыл бұрын
Scrum. SAFe. Project Managers. Jira. Java. "I have all the answers" experts. Silly meetings.
@ilovepickles7427
@ilovepickles7427 Жыл бұрын
Fun vid. Poor/lack of documentation and/or an API that doesn't work as documented. There is no worse feeling than wasting time.
@br3nto
@br3nto Жыл бұрын
Hey Dave. Can you show us the alternative to feature branching and pull requests?? Not just describe it, but demonstrate it.
@marzuraanmarzuraan1226
@marzuraanmarzuraan1226 Жыл бұрын
Very insightful. Thank you! Could you make a video about hiring practices in IT industry, please? Job requirements (laundry list of requirements), interview process, ghosting by recruiters and companies etc
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
Try this: kzbin.info/www/bejne/aHLJnGyBi6qapqc and this kzbin.info/www/bejne/paTRgIxrr8yXg6s
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
The evil of software is its developers - and especially managers who don’t know their tech
@haxi52
@haxi52 Жыл бұрын
The less my manager knows about tech the more I expect they delegate and trust their team. Managers are suppose to clear roadblocks and enable the team. And yes, sometimes poor developers are those roadblocks.
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
@@haxi52 but when they give a steer, HR are there to say you must follow it, although it is likely wrong
@haxi52
@haxi52 Жыл бұрын
@@stephendgreen1502 If HR is involved in steering a dev project, that's a completely different problem to have.
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
@@haxi52 not uncommon though - it happened in two of my last three jobs
@udishemesh4171
@udishemesh4171 Жыл бұрын
Complexity is the challenge without a doubt! Creating a data structure that tell the entire story of the project is what I love doing.
@TheEvertw
@TheEvertw 10 ай бұрын
Fully agree with your comment on Frameworks. Frameworks restrict. In some cases, that is no problem. But in most it becomes a problem at some point. If only because it gets outdated and turns out to be closely-coupled to your code, so replacing it with something new is nigh-on impossible. With libraries, it is usually trivial to create an adapter layer to mimic the old behaviour with a new library. With framework this is not the case.
@RFalhar
@RFalhar Жыл бұрын
When it comes to Code Review vs Pair Programming, I have never met anyone who treated PP as form of code review. And by code review, it is almost always meant an asynchronous pull-request model. Hell, I remember someone saying that even if the code was pair-programmed, it still needs to be turned into a pull request and reviewed by someone who didn't write the code.
@tieTYT
@tieTYT Жыл бұрын
We haven't officially met but I will say I am someone who has worked for years using pair programming as an alternative to code reviews, at least 95% of the time. Required code reviews after pair programming is extremely inefficient in my experience.
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
We haven't met either, but that is how my teams did code review for the past 20 odd years. You don't need PRs if you are pairing, that is crazy!
@7th_CAV_Trooper
@7th_CAV_Trooper Жыл бұрын
Every real code review will turn into a pair programming session. You should just save the time and pair from the start.
@eyesopen6110
@eyesopen6110 Жыл бұрын
PP one of the biggest wastes of time that every existed.
@thewiirocks
@thewiirocks Жыл бұрын
@@eyesopen6110 Ironic name. Question for you: If pairing is such a waste of time, how do you accomplish your QA? Do you have a separate QA person test the change _after_ you finish building it? If so, THAT is the real inefficiency. If you’re pairing up, you can QA the changes as you build them thanks to Continuous Integration. Which means that QA is done almost as soon as code is done. If you’re serializing the process, then you not only have to wait on the QA person, but you’re going to have locking problems where the developer will take something up while waiting for QA, and QA will take something on waiting for DEV, and before you know it you have a massive inventory of “in progress” work. Which we know from Little’s Law will increase time to complete each task and lower your throughput.
@onurdxb
@onurdxb Жыл бұрын
Great content, thank you for your services to software engineering.
@markhathaway9456
@markhathaway9456 Жыл бұрын
I've been intrigued by Scala 3 because it seeks, like some other languages, simpler syntax with a lot more tools to do various things. There are also a compiler, a JVM version, a script-runner, and so on. It isn't enough to have a 1970's C with one compiler for all uses. The next question beyond these technical tools in a simple package is how do we tackle the complexity of design issues. I don't think syntax by itself solves it. I was taught that top-down design with several layers to develop the implementation would enable one to think of parts of the problem space at differing levels of abstraction. That is hardly discussed these days, so I suspect most people see it as impossible to solve or solved, one or the other. But people still talk about the complexity and I don't hear hype about all the different ways to solve it.
@loutrea
@loutrea Жыл бұрын
TY for reading our (sometimes) stupid tweets. You made great content with them.
@jojo-pk
@jojo-pk Жыл бұрын
100% agree on the agile part. I used to work in corporate environments and while there saw better and worse implementations of agile development. Now I'm in a tiny company, in a team of 6 for my peoject and the speed and quality of work would never be possible in even the best agile corporate team. Not even talking about enjoyment. I am sure agility is technically possible in a corporation but it would require management to give up too much power. Not gonna happen.
@dougr550
@dougr550 Жыл бұрын
The funny part is if you have proper org structures, management giving up that power not only makes things better but also makes their lives easier. Agreed that very few people know how to do this.
@errrzarrr
@errrzarrr Жыл бұрын
Agile is like communism, it only works in heaven where everything is perfect already therefore not needed and does not work in hell where they already have it.
@JohnDoe-bu3qp
@JohnDoe-bu3qp Жыл бұрын
Finally, a video to unite all devs :D
@coryserratore5951
@coryserratore5951 Жыл бұрын
or tear them apart
@JohnDoe-bu3qp
@JohnDoe-bu3qp Жыл бұрын
@@coryserratore5951 Nothing unites devs more than tearing each other apart.
@rogerbennett
@rogerbennett Жыл бұрын
I missed the tweet, but #1 on my list is Dunning Kruger. The effect that has on software can be very disruptive.
@LeoOrientis
@LeoOrientis Жыл бұрын
Because you're obviously very thoughtful about what you do, you think of yourself as a designer of software, and you mention the lack of any real progress in GUI programming models since the 1990s, I have to ask: Is there any body of knowledge on GUIs? I've been struggling to find some sage advice on the topic, but most is either promoting a fad framework or misapplying model-view-controller with simple, stateless examples. I found some interesting work that Martin Fowler did in the early noughties... Abandoned, of course. Everyone got so excited about the web back then... The gold in them hills. HTML was the only view-model that mattered, and the rest of it went to sleep until AJAX brought about the JavaScript revolution. But these frameworks seem to exist largely to disguise the raw facts about programming for a web client. Making it into something else. If you don't already know what's underneath, they'll inhibit your understanding, rather than enhance it. And as for how to structure a GUI programme, they only muddied the waters. Academics don't teach GUIs because, I suppose, they feel like more of an engineering problem, best solved by industry. And so, knowing how to build them well becomes a niche topic, kept alive by specialists in industry guilds. To learn their secrets, you have to be very lucky, appearing nearby at exactly the time when the old pros could use a helping hand. You must be very young and preferably remind them of themselves. And this generally happens by accident, rather than by design. So I suppose I'd name this _niche knowledge_ as my pet hate. You'll be reading some doc that seems to be written in ancient Sumerian, and you'll realise... It's defining everything in terms of some previous paradigm that it hopes to replace. But you're reading this long after it's succeeded in completely papering over the old paradigm, which is now lost to the mists of time. If you don't already know, at best you'll have no access to the people who do, or to their body of knowledge. At worst, you'll be down-voted and laughed off the net for having had the temerity to ask about something that isn't currently trendy. That's what I hate.
@vargonian
@vargonian Жыл бұрын
I don’t hate comments as much as other people seem to. “Self-documenting code” is very subjective.
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
My take is if it tells you what the code does, it is wrong, superfluous. if it tells you why you chose that way for the code to work, then may be useful. So most comments are a wast of time, because they tend to simply repeat what the code says, or should say.
@revietech5052
@revietech5052 Жыл бұрын
Code I see nowadays doesn't really look any better or worse than that from 20 years ago. The only difference is it does not have any comments.
@turn1210
@turn1210 Жыл бұрын
@@ContinuousDelivery I like the code to tell the developer the context behind the block of code, why have we made this choice and what Is the workflow. In fact I generally write the comments first then fill in the code. Even having the green blocks as an easy to parse method of reading the workflow helps.
@georgehelyar
@georgehelyar Жыл бұрын
From those tweets I feel like the set of things that people hate is the set of things that people use.
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
Having to pair with devs who don’t know their trade but insist on teaching it to you. Ugh!
@turn1210
@turn1210 Жыл бұрын
That tends to happen a lot.
@tiagodagostini
@tiagodagostini Жыл бұрын
What I hate more than anything.. besides Javascript, .... and standup meeting.., is OPEN SPACE OFFICES!!!! Developers do not work or think as people in HR or other departments!!!
@markhathaway9456
@markhathaway9456 Жыл бұрын
The analogy I often think of is the fiction writer who has his own little office off somewhere in his backyard, away from his home and family and distractions. He goes there to write write write, then returns to Civilization to eat, sleep, and deal with issues.
@GuillermoH77
@GuillermoH77 Жыл бұрын
Error reporting in most software. Perhaps "hate" is not the right word, but it is something in which we have a lot of room for improvement.
@raylopez99
@raylopez99 Жыл бұрын
I hate how fair and balanced this author is, it's too good to be true. He needs some PrimeGen passion and hype! :)
@yapdog
@yapdog Жыл бұрын
Languages are just interfaces. What's more important are the purpose and function of a software.
@timseguine2
@timseguine2 Жыл бұрын
With respect to blindly copying what other successful business have been doing: I always think its best to do what makes sense for the software today, not what you think might make sense for it in the future. The only way that that thinking should manifest in the software is via the modularity necessary to change your mind on that point down the line.
@dontanton7775
@dontanton7775 Жыл бұрын
How would you do trunk development instead of branching when working on a live game that is actively being played and tested while also still in development? Where 100+ people are simultaneously working on new long term feature development, new tech to establish while at the same time players test your alpha version. I really would like to hear someone explain how that scenario is supposed to work without branching and just trunk development.
@dougr550
@dougr550 Жыл бұрын
Not a dev but pretty sure the answer is the master branch lives in dev. No reason I can think of to be pushing untested code to prod on a live app.
@originuk
@originuk Жыл бұрын
What do I hate about software? The people who don't change it. Software, by nature, can always be changed. As a professional, not working towards making software better, means you're not being the best you can be, either through laziness or maybe your manager isn't supporting you, or it doesn't make sense to the business when they have bigger fish to fry.
@changoviejo9575
@changoviejo9575 Жыл бұрын
Scrum, which goes against the spirit of Agile. Bad code reviews, that tell you to change things but give no solid reasons to.
@amyIsFlexable
@amyIsFlexable Жыл бұрын
Where can I get that t-shirt?
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
The T-shirts are from QWERTEE who give a special discount to CDonYT followers! 🔗 Check out their collection HERE: bit.ly/3vTkWy3 USE THIS DISCOUNT CODE: ContinuousDelivery
@MichaelCampbell01
@MichaelCampbell01 Жыл бұрын
1:05 reminded me of one; a smug sense of superiority.
@Th1rt33n__13
@Th1rt33n__13 Жыл бұрын
Mob programming.... has to be one of the most expensive and ridiculous ideas I've heard. What a waste of resource.
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
I admit I thought that when I first heard about it too, but that simply isn't the case, and that has been shown now in lots of teams. Mob programming is surprisingly effective, and it is not a "waste". I talk about it in this video: "Mob Programming Surprised Me" kzbin.info/www/bejne/n5zMnXt9jtBofNU
@BryonLape
@BryonLape Жыл бұрын
Managers love Jira 'cause they can create hundreds of reports with a few clicks.
@markhathaway9456
@markhathaway9456 Жыл бұрын
I don't know Jira, so this is speculation: was it created specifically to serve that dysfunctional joy people get from creating hundreds of reports with a few clicks?
@errrzarrr
@errrzarrr Жыл бұрын
Vanity metrics = vanity results
@mwildam
@mwildam Жыл бұрын
Some of the items on your hate list a pretty general but agree mostly. And the selection misses "Code generators".
@HansLowell
@HansLowell Жыл бұрын
Meetings that take more than 30 minutes and are organized like a broke artist.
@jorgeviana1826
@jorgeviana1826 Жыл бұрын
Dave, you nailed it again!
@ihororobchuk5945
@ihororobchuk5945 Жыл бұрын
10 years ago i propagated agile, now i hate it most of all
@OthmanAlikhan
@OthmanAlikhan 9 ай бұрын
Thanks for the video =)
@chrisdams
@chrisdams Жыл бұрын
I hate automatically generated 'documentation' from comments. Tools like pydoc, doxygen, and javadoc don't lead to documentation that is helpful and clutter the code with many useless comments that point out that the function 'get_height' gets the height.
@apptec7477
@apptec7477 Жыл бұрын
I hate that JS is the only language for web development. Also, I hate JS in general and the almost daily birth of a JS framework that'll become the next boom
@aaronbono4688
@aaronbono4688 10 ай бұрын
Yes, Jira is a hideous tool that should only be used for support and not for development. I agree with you that how it is used, strictly for management purposes really, makes it infinitely worse but if you were to try to use it to manage projects it really doesn't work very well. A simple example, you can't take a Jira issue and break it down into subtasks where if you get those subtasks done the parent is also done. The tool was just not designed to manage project work, it was designed to manage support and those two are not compatible.
@dougr550
@dougr550 Жыл бұрын
There's nothing wrong with agile, but it's not a replacement for competent leadership.
@andrewthompson9714
@andrewthompson9714 Жыл бұрын
I agree, but I would day that competent leadership almost certainly has to be agile
@errrzarrr
@errrzarrr Жыл бұрын
100% agree, there's a reason proyects have had and will always have managers, architects, decision-makers.
@familyshare3724
@familyshare3724 Жыл бұрын
"other people's code"
@Th1rt33n__13
@Th1rt33n__13 Жыл бұрын
Prove to me that your code has been tested, peer reviewed, had some static analysis ran on it, your test coverage meets demands, link a PBI and that your code meets standards all without a pull request or without using my time to physically show me
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
I don't have to prove anything to you 🤣, but since you ask, despite the rather rude way that you asked the question... I led a team that built one of the world's highest performance financial exchanges and operates in regulatory regimes in several different parts of the world. This was heavily regulated software, first under the rules of the FCA (originally the FSA) in the UK. We had to prove all of these things to them for any change, and we did so on an automated basis as a side effect of the way that we worked, including pair programming, TDD, TBD, CI and all of the other practices that I recommend on this channel. I later consulted with Siemens Healthcare, who did much the same, but this time for medical devices the could kill people if they went wrong, and the regulators were still ok with it. Not only is this possible, I would argue that it is close to impossible without these ways of working: I argue that case here: www.davefarley.net/?p=285
@errrzarrr
@errrzarrr Жыл бұрын
Feature-branching and PRs what we have at our team and it works great. Is not perfect, but it would be much worse without that
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
That's fine if you are satisfied, but what data there is, and how the orgs that we think of as "great" at SW dev work disagrees with you. FB & PRs are negatively correlated with high performing teams based on measures of stability & throughput.
@georgebeierberkeley
@georgebeierberkeley Жыл бұрын
Slow compile times. So much time wasted.
@markhathaway9456
@markhathaway9456 Жыл бұрын
thus one reason for the VM languages, but they aren't a complete replacement for fully compiled to the metal languages
@disgruntledtoons
@disgruntledtoons Жыл бұрын
I hate software frameworks that are great for slapping together a prototype, but for which customizations take more work than coding directly in the base technology. I hate management that refuses to allot time for refactoring or code documentation.
@ChaosturnMusic
@ChaosturnMusic Жыл бұрын
I run into this too, about time allotted to refactoring, or really anything but "delivering features". It's a cultural problem, if you have a superior who won't even entertain the idea of these things being valuable then I would probably just do it without telling them. But if you are competent, assertive and accurate in your speech, that goes a long way to earn respect from people and thus drive through change.
@centerfield6339
@centerfield6339 9 ай бұрын
Presumably more experienced people apparently, if we're questioning whether the audience is male. Naybe we're all really 14 year old girls. That's the demographic that loves senior+ software delivery content the most.
@ianoflynn9688
@ianoflynn9688 Жыл бұрын
pull requests of automated tests is a must. Automated tests written poorly leads to a complete disaster
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
What has the quality of automated tests got to do with "Pull Requests", code review maybe, pull-requests entirely optional, and mostly a waste of time for teams. 😉
@sirhenrystalwart8303
@sirhenrystalwart8303 Жыл бұрын
@@ContinuousDelivery PRs maybe a waste of time if you have an all senior team, but not when most of them are juniors. Even they all just merge straight to master, well have a quagmire spaghetti mess in two weeks.
@jhonhernandez9210
@jhonhernandez9210 Жыл бұрын
Don´t be alarm but you have an alien inside
@unitydev457
@unitydev457 Жыл бұрын
As far as pull requests/feature branching/code review - What would you do in a situation where the team is fully asyncronous and in different time zones? I can't think of a way to handle that well without PRs since you can't do proper pair programming. What would you suggest?
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
I'd do pair programming during the timezone overlaps, or maybe mob programming, and work alone during the rest of the time. I add Non-blocking code reviews instead of PRs for everything else. I describe NBCR here: kzbin.info/www/bejne/jZ65lmSHp7yrj7c
@unitydev457
@unitydev457 Жыл бұрын
@@ContinuousDelivery so basically find a way to have overlap where the team pair/mob programs and prioritize that? Gotcha. I've never heard about non block code reviews before I'll check that out thanks for the suggestions!
@ContinuousDelivery
@ContinuousDelivery Жыл бұрын
@@unitydev457 Yes, I once spent about 3 years as part of a team split between London and Chicago, our timezones overlapped by at most 3 hours. But we paired for most of that 3 hours, and found it a great way to keep the team together and focussed on common goals and still learning from one another.
@unitydev457
@unitydev457 Жыл бұрын
@@ContinuousDelivery I've been doing feature branching/ pull requests, and mostly async work for past few jobs and it worked okay when everyone was senior and knew their responsibilities but in latest role I have a few much more junior teammates and I've noticed that it has been leading to situations where we spend 5 minutes talking about a problem, and then they take days over engineering a solution instead of the 10 minutes it would take if we just did it on the spot together. I don't know if the answer is to radically change how we do everything as far as CI/CD right now, but definitely going to try incorporating more pair programming into the workflow
@adamoneil7435
@adamoneil7435 Жыл бұрын
I hate JavaScript so much I couldn't bring myself to watch your episode on it. And it's not so much the language itself but rather my experience of it making me feel stupid for so long. For context, I'm a 20+ year .NET dev.
@psybertao
@psybertao Жыл бұрын
Nice shirt.
@-Jason-L
@-Jason-L Жыл бұрын
To push unfinished work at the end of the day requires some mechanism to block it from the execution path. Not only does this add complexity, it's not ntegrated anymore.
@cod3r1337
@cod3r1337 Жыл бұрын
Still not sold on the idea ditching PR-style code reviews. Yes, they are a crutch, but I haven't found an alternative that works for my teams. Before PRs, it was everyone for themselves and no feedback or mentoring of any kind at all, which served to produce incredibly horrible messes that we still have to deal with. We certainly don't want to go back there. Of course that's not what Dave is suggesting. What he is consistently suggesting is pair programming in place of PRs. And while I think pair programming is a useful technique that I use and encourage a lot, everyone I have ever worked with agrees that it's impossible to do it *all the time*. It's just way too exhausting.
@ChaosturnMusic
@ChaosturnMusic Жыл бұрын
When pair programming you can have one of you create the pr and the other approve it instantly, and when working alone you create the PR and have someone review it like usual
@wesselbindt
@wesselbindt Жыл бұрын
I pair most of my day, with the occasional exception for the simplest of PRs. I found it extremely exhausting in the beginning, but not anymore. I think it just takes some time to get used to. Being remote helps. I couldn't imagine doing this in an office 5 days a week
@errrzarrr
@errrzarrr Жыл бұрын
Same for me. I work in a feature branching PR oriented team and while things are not perfect it could be worse without that in place
@markemerson98
@markemerson98 Жыл бұрын
scrum = kill it
@NachtmahrNebenan
@NachtmahrNebenan Жыл бұрын
*Reactive code* (instead of reactive systems). On the other hand it guarantees my job for the next 10 years to get rid of it 😂 feels same like the COBOL situation.
@BernardMcCarty
@BernardMcCarty Жыл бұрын
Late to the party! I have extreme dislike for constructors that do anything other than initialise field variables. Why do people still do things like initialise a database, or some other heavy lifting in a constructor that can potentially cause object instantiation to blow up? Actually, I even dislike those... I think I just like to see no args constructors only, please. Everything else can be set and/or accessed via methods with the appropriate access specifiers... change my mind!
@ofbaran
@ofbaran 10 ай бұрын
Overuse of containers. Docker this docker that, unnecessary use of containers for small and simpler projects that do not require containers. It also feels really weird to see virtual machines in virtual machines using containers, it just feels redundant at some point.
@anronpupkin1887
@anronpupkin1887 Жыл бұрын
I hate Windows so much it's unreal. I spent half a year on Fedora and felt like I was trying to save a sinking ship by constantly repairing it. I was thinking "God, Windows was so much more stable and daily use friendly". But when I returned to Windows I was SHOCKED. It is ugly, irritating, full of bloatware and BS nobody asked for, and worst of all it just assumes you are a degenerate, who does not know how to use a computer and should not be trusted with anything. I ran back to Linux as fast as I can and I really have no idea how people can use Windows on their developing machines.
@errrzarrr
@errrzarrr Жыл бұрын
Poor or no documentation with the excuse of being Agile or being true Scrum-certified process. That won't make us anymore agile or quick. On the contrary, makes everything slower l, stick and more difficult to escalate
@stagnudemorte9191
@stagnudemorte9191 Жыл бұрын
i don't think there's anything wrong with jira, it's a user and administration problem exclusively
@turbulantarchitect5286
@turbulantarchitect5286 6 ай бұрын
Backend people hate JavaScript (and html/css), in other words frontend a lot.
@KirbyZhang
@KirbyZhang Жыл бұрын
I kind of hate how so many people believe "you can do everything with Python"; I always found it as the most useless language because everything is 100x slower
@markhathaway9456
@markhathaway9456 Жыл бұрын
Sorry, slower than what? Are you a C++ coder? Most everything is slower. It's hard to find something that spans the range. Python tries with very low-level stuff in C, but they're still failing. And C++ doesn't serve the rapid-turnaround dreams.
@KirbyZhang
@KirbyZhang Жыл бұрын
@@markhathaway9456 My estimate is Python will become less preferred as people work with larger amounts of data. It's not a useful language when every language feature outside of vectorized numpy code, is not usable on large data sets. Not to mention it's still *single threaded* when standard consumer cpu's are havinge 16 cores 32 threads. Try Julia as it solving the remaining compile time issues. It has none of the problems I mentioned.
@markhathaway9456
@markhathaway9456 Жыл бұрын
@@KirbyZhang Is Julia compiled, interpreted, or running on a VM also used by other languages?
@KirbyZhang
@KirbyZhang Жыл бұрын
@@markhathaway9456 it's compiled with a runtime and a REPL
@markhathaway9456
@markhathaway9456 Жыл бұрын
@@KirbyZhang So compiled or interpreted (on it's own VM?)
@eyesopen6110
@eyesopen6110 Жыл бұрын
Time wasted following "agile". Useless" managers" with no technical background. Agile has turned all developers into numbers, not people with skillz.
@PeterPerhac
@PeterPerhac Жыл бұрын
Look mum, I'm now a famous "hater" on the internet. Serves me right for posting things on Twitter 😀
@Kenbomp
@Kenbomp Жыл бұрын
Incremental seems better
@stephendgreen1502
@stephendgreen1502 Жыл бұрын
We should focus on design and have AI tools to organise and lay out our code. Big things first.
@edgeeffect
@edgeeffect Жыл бұрын
People who hate Jira don't know how lucky we are.... where I am, we use Redmine.... oooh, I dream of Jira.
@MiiDev69
@MiiDev69 Жыл бұрын
Someone once told me "Be in software development long enough and you will start hating your users".
@markhathaway9456
@markhathaway9456 Жыл бұрын
I sometimes think that must also be true for doctors who have ill patients that won't change their ways and be well.
@carlospena98
@carlospena98 6 ай бұрын
I hate old school geezers whose favorite activity is bossing people around and always seem to have something to say about everything
@aram5642
@aram5642 10 ай бұрын
I hate meaningless code reviews or single person code reviees when a new feature is added. 'LGTM' has become a new curse acronym
@softwaretechnologyengineering
@softwaretechnologyengineering Жыл бұрын
Waterfall and Scrum
@edhodapp6465
@edhodapp6465 Жыл бұрын
How is, “Real Code,” a more desirable attribute than, “working code?” :D
@BryonLape
@BryonLape Жыл бұрын
Typically, those who don't like Javascript aren't using it correctly.
@what42pizza
@what42pizza Жыл бұрын
I hate OOP
@andrewthompson9714
@andrewthompson9714 Жыл бұрын
A poor, clunky JIRA implementation is slow feedback that your organisation may be falling foul of conways law
@webistk3949
@webistk3949 Жыл бұрын
I do not like the following. Glad succeeded to leave those all behind me. - Company Setup. While software development require skill and performance similar to a game, like football, instead good developers are punished. - Abundance of Fairy Tales. Software Promoting industry has no clue. Hypes and manipulations all over. Cowboys, Monkeys, Copycats. Missing job title "Codebase Developer" that should not be bothered with client requirement, but mainly refactor for healthy codebase. - Isolation from the real business process by abstracted, and usually wrong, requirements.
@keepinfotechsimple
@keepinfotechsimple 10 ай бұрын
"developers" who just ask chat gpt, but who can't dive in and diagnose a problem
Types Of Technical Debt And How To Manage Them
17:58
Continuous Delivery
Рет қаралды 54 М.
The STUPID MYTH Of Genius Software Developers
16:35
Continuous Delivery
Рет қаралды 18 М.
Каха и лужа  #непосредственнокаха
00:15
Trick-or-Treating in a Rush. Part 2
00:37
Daniel LaBelle
Рет қаралды 47 МЛН
AWS Community Day Vadodara 2024: Session by Mr. Ragavendran Chandrasekaran
27:20
The Hidden Cost Of GraphQL And NodeJS
28:35
ThePrimeTime
Рет қаралды 197 М.
The Making of Linux: The World's First Open-Source Operating System
11:33
ForrestKnight
Рет қаралды 1,3 МЛН
Architectural Thinking by Mark Richards
40:23
Apiumhub
Рет қаралды 1,5 М.
I’ve Found Something BETTER Than Pull Requests...
23:36
Continuous Delivery
Рет қаралды 51 М.
Why Isn't Functional Programming the Norm? - Richard Feldman
46:09
Minimum Viable Architecture • Randy Shoup • YOW! 2022
47:40
GOTO Conferences
Рет қаралды 56 М.
Unit Testing Is The BARE MINIMUM
20:33
Continuous Delivery
Рет қаралды 33 М.
How to Check if a User Exists Among Billions! - 4 MUST Know Strategies
12:44
Why Agent Frameworks Will Fail (and what to use instead)
19:21
Dave Ebbelaar
Рет қаралды 88 М.
Новый iPhone 👍 @JaySharon
1:07
История одного вокалиста
Рет қаралды 3 МЛН
The M4 Mac Mini is Incredible!
11:45
Marques Brownlee
Рет қаралды 5 МЛН
ИГРОВОЙ ПК от ИЛОНА МАСКА, Распаковка
32:50
Today's Console Pick 🔥
0:11
Gleb POV
Рет қаралды 879 М.