What is the single most influential book every Programmers should read
There are a lot of books that can be influential to programmers. But, what is the one book that every programmer should read? This is a question that has been asked by many, and it is still up for debate. However, there are some great contenders for this title. In this blog post, we will discuss three possible books that could be called the most influential book for programmers. So, what are you waiting for? Keep reading to find out more!
- Bjarne Stroustrup – The C++ Programming Language,
- Brian W. Kernighan, Rob Pike – The Practice of Programming,
- Donald Knuth – The Art of Computer Programming,
- Ellen Ullman – Close to the Machine,
- Ellis Horowitz – Fundamentals of Computer Algorithms,
- Eric Raymond – The Art of Unix Programming,
- Gerald M. Weinberg – The Psychology of Computer Programming,
- James Gosling – The Java Programming Language,
- Joel Spolsky – The Best Software Writing I,
- Keith Curtis – After the Software Wars,
- Richard M. Stallman – Free Software, Free Society,
- Richard P. Gabriel – Patterns of Software,
- Richard P. Gabriel – Innovation Happens Elsewhere,
- Code Complete (2nd edition) by Steve McConnell,
- The Pragmatic Programmer,
- Structure and Interpretation of Computer Programs,
- The C Programming Language by Kernighan and Ritchie,
- Introduction to Algorithms by Cormen, Leiserson, Rivest & Stein,
- Design Patterns by the Gang of Four,
- Refactoring: Improving the Design of Existing Code,
- The Mythical Man Month,
- The Art of Computer Programming by Donald Knuth,
- Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi and Jeffrey D. Ullman,
- Gödel, Escher, Bach by Douglas Hofstadter,
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin,
- Effective C++,
- More Effective C++,
- CODE by Charles Petzold,
- Programming Pearls by Jon Bentley,
- Working Effectively with Legacy Code by Michael C. Feathers,
- Peopleware by Demarco and Lister
- Coders at Work by Peter Seibel,
- Surely You’re Joking, Mr. Feynman!,
- Effective Java 2nd edition,
- Patterns of Enterprise Application Architecture by Martin Fowler,
- The Little Schemer,
- The Seasoned Schemer,
- Why’s (Poignant) Guide to Ruby,
- The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity,
- The Art of Unix Programming,
- Test-Driven Development: By Example by Kent Beck,
- Practices of an Agile Developer,
- Don’t Make Me Think,
- Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin,
- Domain Driven Designs by Eric Evans,
- The Design of Everyday Things by Donald Norman,
- Modern C++ Design by Andrei Alexandrescu,
- Best Software Writing I by Joel Spolsky,
- The Practice of Programming by Kernighan and Pike,
- Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt,
- Software Estimation: Demystifying the Black Art by Steve McConnel,
- The Passionate Programmer (My Job Went To India) by Chad Fowler,
- Hackers: Heroes of the Computer Revolution,
- Algorithms + Data Structures = Programs,
- Writing Solid Code,
- JavaScript – The Good Parts,
- Getting Real by 37 Signals,
- Foundations of Programming by Karl Seguin,
- Computer Graphics: Principles and Practice in C (2nd Edition),
- Thinking in Java by Bruce Eckel,
- The Elements of Computing Systems,
- Refactoring to Patterns by Joshua Kerievsky,
- Modern Operating Systems by Andrew S. Tanenbaum,
- The Annotated Turing,
- Things That Make Us Smart by Donald Norman,
- The Timeless Way of Building by Christopher Alexander,
- The Deadline: A Novel About Project Management by Tom DeMarco,
- The C++ Programming Language (3rd edition) by Stroustrup,
- Patterns of Enterprise Application Architecture,
- Computer Systems – A Programmer’s Perspective,
- Agile Principles, Patterns, and Practices in C# by Robert C. Martin,
- Growing Object-Oriented Software, Guided by Tests,
- Framework Design Guidelines by Brad Abrams,
- Object Thinking by Dr. David West,
- Advanced Programming in the UNIX Environment by W. Richard Stevens,
- Hackers and Painters: Big Ideas from the Computer Age,
- The Soul of a New Machine by Tracy Kidder,
- CLR via C# by Jeffrey Richter,
- The Timeless Way of Building by Christopher Alexander,
- Design Patterns in C# by Steve Metsker,
- Alice in Wonderland by Lewis Carol,
- Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig,
- About Face – The Essentials of Interaction Design,
- Here Comes Everybody: The Power of Organizing Without Organizations by Clay Shirky,
- The Tao of Programming,
- Computational Beauty of Nature,
- Writing Solid Code by Steve Maguire,
- Philip and Alex’s Guide to Web Publishing,
- Object-Oriented Analysis and Design with Applications by Grady Booch,
- Effective Java by Joshua Bloch,
- Computability by N. J. Cutland,
- Masterminds of Programming,
- The Tao Te Ching,
- The Productive Programmer,
- The Art of Deception by Kevin Mitnick,
- The Career Programmer: Guerilla Tactics for an Imperfect World by Christopher Duncan,
- Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp,
- Masters of Doom,
- Pragmatic Unit Testing in C# with NUnit by Andy Hunt and Dave Thomas with Matt Hargett,
- How To Solve It by George Polya,
- The Alchemist by Paulo Coelho,
- Smalltalk-80: The Language and its Implementation,
- Writing Secure Code (2nd Edition) by Michael Howard,
- Introduction to Functional Programming by Philip Wadler and Richard Bird,
- No Bugs! by David Thielen,
- Rework by Jason Freid and DHH,
- JUnit in Action
Source: Wikipedia

What are the concepts every Java C# C++ Python Rust programmer must know?
Ok…I think this is one of the most important questions to answer. According to the my personal experience as a Programmer, I would say you must learn following 5 universal core concepts of programming to become a successful Java programmer.
(1) Mastering the fundamentals of Java programming Language – This is the most important skill that you must learn to become successful java programmer. You must master the fundamentals of the language, specially the areas like OOP, Collections, Generics, Concurrency, I/O, Stings, Exception handling, Inner Classes and JVM architecture.
Recommended readings are OCA Java SE 8 Programmer by by Kathy Sierra and Bert Bates (First read Head First Java if you are a new comer ) and Effective Java by Joshua Bloch.
(2) Data Structures and Algorithms – Programming languages are basically just a tool to solve problems. Problems generally has data to process on to make some decisions and we have to build a procedure to solve that specific problem domain. In any real life complexity of the problem domain and the data we have to handle would be very large. That’s why it is essential to knowing basic data structures like Arrays, Linked Lists, Stacks, Queues, Trees, Heap, Dictionaries ,Hash Tables and Graphs and also basic algorithms like Searching, Sorting, Hashing, Graph algorithms, Greedy algorithms and Dynamic Programming.
Recommended readings are Data Structures & Algorithms in Java by Robert Lafore (Beginner) , Algorithms Robert Sedgewick (intermediate) and Introduction to Algorithms-MIT press by CLRS (Advanced).
(3) Design Patterns – Design patterns are general reusable solution to a commonly occurring problem within a given context in software design and they are absolutely crucial as hard core Java Programmer. If you don’t use design patterns you will write much more code, it will be buggy and hard to understand and refactor, not to mention untestable and they are really great way for communicating your intent very quickly with other programmers.
Recommended readings are Head First Design Patterns Elisabeth Freeman and Kathy Sierra and Design Patterns: Elements of Reusable by Gang of four.
(4) Programming Best Practices – Programming is not only about learning and writing code. Code readability is a universal subject in the world of computer programming. It helps standardize products and help reduce future maintenance cost. Best practices helps you, as a programmer to think differently and improves problem solving attitude within you. A simple program can be written in many ways if given to multiple developers. Thus the need to best practices come into picture and every programmer must aware about these things.
Recommended readings are Clean Code by Robert Cecil Martin and Code Complete by Steve McConnell.
(5) Testing and Debugging (T&D) – As you know about the writing the code for specific problem domain, you have to learn how to test that code snippet and debug it when it is needed. Some programmers skip their unit testing or other testing methodology part and leave it to QA guys. That will lead to delivering 80% bugs hiding in your code to the QA team and reduce the productivity and risking and pushing your project boundaries to failure. When a miss behavior or bug occurred within your code when the testing phase. It is essential to know about the debugging techniques to identify that bug and its root cause.
Recommended readings are Debugging by David Agans and A Friendly Introduction to Software Testing by Bill Laboon.
I hope these instructions will help you to become a successful Java Programmer. Here i am explain only the universal core concepts that you must learn as successful programmer. I am not mentioning any technologies that Java programmer must know such as Spring, Hibernate, Micro-Servicers and Build tools, because that can be change according to the problem domain or environment that you are currently working on…..Happy Coding!
Summary: There’s no doubt that books have had a profound influence on society and the advancement of human knowledge. But which book is the most influential for programmers? Some might say it’s The Art of Computer Programming, or The Pragmatic Programmer. But I would argue that the most influential book for programmers is CODE: The Hidden Language of Computer Hardware and Software. In CODE, author Charles Petzold takes you on a journey from the basics of computer hardware to the intricate workings of software. Along the way, you learn how to write code in Assembly language, and gain an understanding of how computers work at a fundamental level. If you’re serious about becoming a programmer, then CODE should be at the top of your reading list!
Programming Breaking News
- Which Federation Gateway Should You Choose In 2023?by /u/Global_Bid_635 (programming) on December 6, 2023 at 7:00 am
submitted by /u/Global_Bid_635 [link] [comments]
- Artur Foxander: Ten actionable tips to fix almost all bugs in game development but also in generalby /u/_a4z (programming) on December 6, 2023 at 6:24 am
submitted by /u/_a4z [link] [comments]
- Tulsi Credit Loan Customer CARE NUMBER 9330487052//9641914670 Cal Nowby Karu Team (Python on Medium) on December 6, 2023 at 3:52 am
Continue reading on Medium »
- Exploring the Evolution of Django Forms in Version 5.0by Anderson Magalhães (Python on Medium) on December 6, 2023 at 3:50 am
Unveiling New Possibilities and Enhanced Functionality in the Latest Django ReleaseContinue reading on Medium »
- Enhancing K8s Gateway API with Easegress Without Changing a Single Line of Codeby /u/longdeqidao (programming) on December 6, 2023 at 3:47 am
submitted by /u/longdeqidao [link] [comments]
- Revolutionize Your Kubernetes Experience with Easegress: Kubernetes Gateway APIby /u/longdeqidao (programming) on December 6, 2023 at 3:47 am
submitted by /u/longdeqidao [link] [comments]
- A Practical Approach to the NVIDIA Omniverse Robotics Simulation Toolkitby Ake Zavala JM (Python on Medium) on December 6, 2023 at 3:43 am
The Surface Gripper Extension through OmniGraphContinue reading on Medium »
- 100 Days learning Data Science — My Journey (Day 0)by Joaquin Contreras (Python on Medium) on December 6, 2023 at 3:29 am
I read many posts about a “new” trend to learn as much Data Science as you can…Continue reading on Medium »
- SUN CASH LOAN CUSTOMER Care Helpline NUMBER=// ➑➊⓿➋➌⓿➊➎➏➑ // 7870592408 // 8102301568 -// CALL ME.by Sankar Raza (Coding on Medium) on December 6, 2023 at 3:28 am
Photo by Shubham Dhage on UnsplashContinue reading on Medium »
- SUN CASH LOAN CUSTOMER Care Helpline NUMBER=// ➑➊⓿➋➌⓿➊➎➏➑ // 7870592408 // 8102301568 -// CALL ME.by Sankar Raza (Coding on Medium) on December 6, 2023 at 3:27 am
Photo by Patrick Langwallner on UnsplashContinue reading on Medium »
- Sun Cash loan CusTomer Care Helpline Number 9❸➁➀➀➃///7090175805//™9608751671 √√Call now.by Ksgsibzbxvx (Python on Medium) on December 6, 2023 at 3:21 am
Continue reading on Medium »
- Sun Cash loan CusTomer Care Helpline Number 9❸➁➀➀➃///7090175805//™9608751671 √√Call now.by Ksgsibzbxvx (Python on Medium) on December 6, 2023 at 3:18 am
Continue reading on Medium »
- Sun Cash loan CusTomer Care Helpline Number 9❸➁➀➀➃///7090175805//™9608751671 √√Call now.by Ksgsibzbxvx (Python on Medium) on December 6, 2023 at 3:14 am
Continue reading on Medium »
- A Practical Guide to Creating Microservices With Go-Microby /u/Suspicious_Role_2765 (programming) on December 6, 2023 at 3:06 am
submitted by /u/Suspicious_Role_2765 [link] [comments]
- Mastering Laravel Authentication: Customizing and Extendingby Kinger (Coding on Medium) on December 6, 2023 at 2:52 am
Laravel, the PHP web application framework, comes with a robust authentication system out of the box. However, as your project grows, you…Continue reading on Blob-Streaming »
- Kite money manager loan customer care helpline number -//_7090175805-// 9608751671 -//_ 7090175805…by Akash Kumar (Python on Medium) on December 6, 2023 at 2:49 am
Continue reading on Medium »
- Kite money manager loan customer care helpline number -//_7090175805-// 9608751671 -//_ 7090175805…by Akash Kumar (Python on Medium) on December 6, 2023 at 2:44 am
Continue reading on Medium »
- LG money LOAN app customer CARE HELPLINE NUMBER 702/962/0259// 9608939478 · Dgd Cc ...by Vishva Ji (Python on Medium) on December 6, 2023 at 2:44 am
Continue reading on Medium »
- A ‘Software Developer’ Knows Enough to Deliver Working Software Alone and in Teamsby /u/Mariambarouma (programming) on December 6, 2023 at 2:40 am
submitted by /u/Mariambarouma [link] [comments]
- A ‘Software Developer’ Knows Enough to Deliver Working Software Alone and in Teamsby Mohamed Aboelez (Coding on Medium) on December 6, 2023 at 2:35 am
What should a software developer know how to do?Continue reading on Blob-Streaming »
- Building a Client’s $3,500 AI Chatbot LIVEby AI FOR HUMANS (Coding on Medium) on December 6, 2023 at 1:55 am
Welcome to this comprehensive tutorial on creating a chatbot using Botpress and integrating Stack AI for enhanced functionality. Whether…Continue reading on Medium »
- [JavaScript30] — 19 Webcam Fun 挑戰by Danny Hu (Coding on Medium) on December 6, 2023 at 1:55 am
[JavaScript30] — 19 Webcam Fun 挑戰Continue reading on Medium »
- 365 Cash Loan Customer Care Helpline number*/6362422439-//6362422439 Call Nowby Windmillmoneyloan (Coding on Medium) on December 6, 2023 at 12:54 am
Continue reading on Medium »
- Bash script for fancy screenshotsby /u/1234away (programming) on December 6, 2023 at 12:42 am
submitted by /u/1234away [link] [comments]
- My Portfolio Redesignby John Henry Hammond (Coding on Medium) on December 6, 2023 at 12:37 am
A redesign of my digital portfolio to better showcase my creativity, personality, and workContinue reading on Medium »
- Sun Cash loan CusTomer Care Helpline Number ➑➊⓿➋➌⓿➊➎➏➑///7870592408//™7061107023 √√Call now.by Raj Sekhar (Coding on Medium) on December 6, 2023 at 12:32 am
Sun Cash loan CusTomer Care Helpline Number ➑➊⓿➋➌⓿➊➎➏➑///7870592408//™7061107023 √√Call now.Continue reading on Medium »
- OWASP Juice Shop: Hacking A Modern Web Applicationby /u/MettaStoic (programming) on December 6, 2023 at 12:22 am
submitted by /u/MettaStoic [link] [comments]
- Your GitHub pull request workflow is slowing you downby /u/sinani206 (programming) on December 6, 2023 at 12:22 am
submitted by /u/sinani206 [link] [comments]
- Balanced Brackets Detection in a Stringby Ajay Srinivasan (Coding on Medium) on December 6, 2023 at 12:22 am
Problem Statement:Continue reading on BubblesPebbles »
- Reverse engineering reveals code causing Polish trains lock up when serviced in third-party workshopsby /u/grauenwolf (programming) on December 6, 2023 at 12:19 am
submitted by /u/grauenwolf [link] [comments]
- All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and moreby /u/trishume (programming) on December 5, 2023 at 11:30 pm
submitted by /u/trishume [link] [comments]
- SemanticDiff 0.8.8 adds support for Rustby /u/DarkPlayer2 (programming) on December 5, 2023 at 11:23 pm
submitted by /u/DarkPlayer2 [link] [comments]
- “MOME” performance methodologyby /u/bitter-cognac (programming) on December 5, 2023 at 11:11 pm
submitted by /u/bitter-cognac [link] [comments]
- Safety in Deep Reinforcement Learningby /u/ml_dnn (programming) on December 5, 2023 at 9:39 pm
submitted by /u/ml_dnn [link] [comments]
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:55 pm
Continue reading on Medium »
- CodeBehind framework is faster than ASP.NET Coreby Mohammad Rabie (Programming on Medium) on December 5, 2023 at 7:54 pm
Based on tests conducted by Elanat Framework, the CodeBehind framework is faster than the default cshtml structure in ASP.NET Core.Continue reading on Medium »
- The last programming project from Bill Gates: Microsoft BASIC for TRS-80 Model 100by /u/Lunduke (programming) on December 5, 2023 at 7:52 pm
submitted by /u/Lunduke [link] [comments]
- Advent of Code 2023 in JavaScript: Day 4, Part 2by Juliane Cassidy (Programming on Medium) on December 5, 2023 at 7:50 pm
Follow Up to Day 4’s Challenge with a JavaScript SolutionContinue reading on Medium »
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:48 pm
Continue reading on Medium »
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:47 pm
Continue reading on Medium »
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:46 pm
Continue reading on Medium »
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:45 pm
Continue reading on Medium »
- Kite money manager loan CusTomer Care Helpline Number ➈9❸➁➁➈➀➀➃4///9932291144//™9932291144 √√Call…by Ajay Kumar (Programming on Medium) on December 5, 2023 at 7:45 pm
Continue reading on Medium »
- Sarvatra loan CusTomer Care Helpline Number/❾❼❹❾❷❶❸⓿❹❺//™9382521654-//-9749213045√√ call Now.by Sarvatra Loan App (Programming on Medium) on December 5, 2023 at 7:45 pm
Continue reading on Medium »
- A Tutorial on Principal Component Analysisby /u/ketralnis (programming) on December 5, 2023 at 6:20 pm
submitted by /u/ketralnis [link] [comments]
- The Onyx Programming Languageby /u/ketralnis (programming) on December 5, 2023 at 6:20 pm
submitted by /u/ketralnis [link] [comments]
- iMessage, explainedby /u/ketralnis (programming) on December 5, 2023 at 6:13 pm
submitted by /u/ketralnis [link] [comments]
- Meta-Programming in HTML, the programming languageby /u/_htmx (programming) on December 5, 2023 at 5:47 pm
submitted by /u/_htmx [link] [comments]
- This is how I visualize my C++ data structures during debuggingby /u/sunxfancy (programming) on December 5, 2023 at 5:32 pm
submitted by /u/sunxfancy [link] [comments]
- Incremental Rust builds in CIby /u/agbell (programming) on December 5, 2023 at 4:57 pm
submitted by /u/agbell [link] [comments]
- Hedy - a multilingual programming language for children to learn to program (Interview)by /u/antsaregay (programming) on December 5, 2023 at 2:38 pm
submitted by /u/antsaregay [link] [comments]
- When would you ever want bubblesort?by /u/azhenley (programming) on December 4, 2023 at 8:25 pm
submitted by /u/azhenley [link] [comments]
- The World Depends on 60-Year-Old Code No One Knows Anymoreby /u/debordian (programming) on December 4, 2023 at 2:16 pm
submitted by /u/debordian [link] [comments]
- How to become a senior engineer too earlyby /u/mixteenth (programming) on December 4, 2023 at 1:21 pm
submitted by /u/mixteenth [link] [comments]
- [META] The future of r/programmingby /u/ketralnis (programming) on October 9, 2023 at 4:03 pm
Hello fellow programs! tl;dr what should r/programming's rules be? And also a call for additional mods. We'll leave this stickied for a few days to gather feedback. Here are the broad categories of content that we see, along with whether they are currently allowed. ✅ means that it's currently allowed, 🚫 means that it's not currently allowed, ⚠️ means that we leave it up if it is already popular but if we catch it young in its life we do try to remove it early. ✅ Actual programming content. They probably have actual code in them. Language or library writeups, papers, technology descriptions. How an allocator works. How my new fancy allocator I just wrote works. How our startup built our Frobnicator, rocket ship emoji. For many years this was the only category of allowed content. ✅ Programming news. ChatGPT can write code. A big new CVE just dropped. Curl 8.01 released now with Coffee over IP support. ✅ Programmer career content. How to become a Staff engineer in 30 days. Habits of the best engineering managers. How to deal with your annoying coworkers, Jeff. ✅ Articles/news interesting to programmers but not about programming. Work from home is bullshit. Return to office is bullshit. There's a Steam sale on programming games. Terry Davis has died. How to SCRUMM. App Store commissions are going up. How to hire a more diverse development team. Interviewing programmers is broken. ⚠️ General technology news. Google buys its last competitor. A self driving car hit a pedestrian. Twitter is collapsing. Oculus accidentally showed your grandmother a penis. Github sued when Copilot produces the complete works of Harry Potter in a code comment. Meta cancels work from home. Gnome dropped a feature I like. How to run Stable Diffusion to generate pictures of, uh, cats, yeah it's definitely just for cats. A bitcoin VR metaversed my AI and now my app store is mobile social local. 🚫 Politics. The Pirate Party is winning in Sweden. Please vote for net neutrality. Big Tech is being sued in Europe for gestures broadly. 🚫 Gossip. Richard Stallman switches to Windows. Elon Musk farted. Linus Torvalds was a poopy-head on a mailing list. Grace Hopper Conference is now 60% male. The People's Rust Foundation is arguing with the Rust Foundation For The People. Terraform has been forked into Terra and Form. Stack Overflow sucks now. Stack Overflow is good actually. ✅ Demos with code. I wrote a game, here it is on GitHub 🚫 Demos without code. I wrote a game, come buy it! Please give me feedback on my startup (totally not an ad nosirree). I stayed up all night writing a commercial text editor, here's the pricing page. I made a DALL-E image generator. I made the fifteenth animation of A* this week, here's a GIF. 🚫 AskReddit type forum questions. What's your favourite programming language? Tabs or spaces? Does anyone else hate it when. 🚫 Support questions. How do I write a web crawler? How do I get into programming? Where's my missing semicolon? Please do this obvious homework problem for me. Personally I feel very strongly about not allowing these because they'd quickly drown out all of the actual content I come to see, and there are already much more effective places to get them answered anyway. In real life the quality of the ones that we see is also universally very low. 🚫 Surveys and 🚫 Job postings and anything else that is looking to extract value from a place a lot of programmers hang out without contributing anything itself. 🚫 Meta posts. DAE think r/programming sucks? Why did you remove my post? Why did you ban this user that is totes not me I swear I'm just asking questions. Except this meta post. This one is okay because I'm a tyrant that the rules don't apply to (I assume you are saying about me to yourself right now). 🚫 Images, memes, anything low-effort or low-content. Thankfully we very rarely see any of this so there's not much to remove but like support questions once you have a few of these they tend to totally take over because it's easier to make a meme than to write a paper and also easier to vote on a meme than to read a paper. ⚠️ Posts that we'd normally allow but that are obviously, unquestioningly super low quality like blogspam copy-pasted onto a site with a bazillion ads. It has to be pretty bad before we remove it and even then sometimes these are the first post to get traction about a news event so we leave them up if they're the best discussion going on about the news event. There's a lot of grey area here with CVE announcements in particular: there are a lot of spammy security "blogs" that syndicate stories like this. ⚠️ Posts that are duplicates of other posts or the same news event. We leave up either the first one or the healthiest discussion. ⚠️ Posts where the title editorialises too heavily or especially is a lie or conspiracy theory. Comments are only very loosely moderated and it's mostly 🚫 Bots of any kind (Beep boop you misspelled misspelled!) and 🚫 Incivility (You idiot, everybody knows that my favourite toy is better than your favourite toy.) However the number of obvious GPT comment bots is rising and will quickly become untenable for the number of active moderators we have. There are some topics such as Code of Conduct arguments within projects that I don't know where to place where we've been doing a civility check on the comments thread and using that to make the decision. Similarly some straddle the line (a link to a StackOverflow post asking for help and the reddit OP is the StackOverflow OP, but there's a lot of technical content and the reddit discussion is healthy). And even most 🚫s above are left up if there's a healthy discussion going already by the time we see it. So what now? We need to decide what r/programming should be about and we need to write those rules down so that mods can consistently apply them. The rules as written are pretty vague and the way we're moderating in practise is only loosely connected to them. We're looking for feedback on what kind of place r/programming should be so tell us below. We need additional mods. If you're interested in helping moderate please post below, saying why you'd be a good mod and what you'd would change about the space if you were. You don't need to be a moderator elsewhere but please do mention it if you are and what we could learn on r/programming that you already know. Currently I think I'm the only one going down the new page every morning and removing the rule-breaking posts. (Today these are mostly "how do I program computer" or "can somebody help me fix my printer", and obvious spam.) This results in a lot of threads complaining about the moderation quality and, well, it's not wrong. I'm not rigorously watching the mod queue and I'm not trawling comments threads looking for bad actors unless I'm in that thread anyway and I don't use reddit every single day. So if we want it to be better we'll need more human power. FAQ: Why do we need moderation at all? Can't the votes just do it? We know there is demand for unmoderated spaces in the world, but r/programming isn't that space. This is our theory on why keeping the subreddit on topic is important: Forums have the interesting property that whatever is on the front page today is what will be on the front page tomorrow. When a user comes to the site and sees a set of content, they believe that that's what this website is about. If they like it they'll stay and contribute that kind of content and if they don't like it they won't stay, leaving only the people that liked the content they saw yesterday. So the seed content is important and keeping things on topic is important. If you like r/programming then you need moderation to keep it the way that you like it (or make it be the place you wish it were) because otherwise entropic drift will make it be a different place. And once you have moderation it's going to have a subjective component, that's just the nature of it. Because of the way reddit works, on a light news day r/programming doesn't get enough daily content for articles to meaningfully compete with each other. Towards the end of the day if I post something to r/programming it will immediately go to the front page of all r/programming subscribers. So while it's true that sub-par and rule-breaking posts already do most of their damage before the mods even see them, the whole theory of posts competing via votes alone doesn't really work in a lower-volume subreddit. Because of the mechanics of moderation it's not really possible to allow the subreddit to be say 5% support questions. Even if we wanted to allow it to be a small amount of the conten, the individuals whose content was removed would experience and perceive this as a punitive action against them. That means that any category we allow could theoretically completely take over r/programming (like the career posts from last week) so we should only allow types of content that we'd be okay with taking it over. Personally my dream is for r/programming to be the place with the highest quality programming content, where I can go to read something interesting and learn something new every day. That dream is at odds with allowing every piece of blogspam and "10 ways to convince your boss to give you a raise, #2 will get you fired!" submitted by /u/ketralnis [link] [comments]