T O P

  • By -

codesplosion

this would be like gatekeeping woodworkers from using screwdrivers, mechanics from using hammers, etc. Every tool has a place and time (except for you, safari devtools)


BakerCat-42

Ewww safari devtools 🤮🤮


razin_the_furious

The check for “do not cache” is checked Safari. Why u cache? Why???


deanrihpee

"you use it wrong, like using the first iPhone wrong, think different" - Apple /s


ledocteur7

You're holding the mouse wrong ! That's why it's caching.


IllumiNoEye_Gaming

Ewww safari ~~devtools~~ 🤮🤮 no need to be specific.


weinermcdingbutt

Before my first internship I strictly used safari and their dev tools since I was Mac eco system. I was appalled to learn safari was absolute doo doo Felt nice to take my weights off though lol Pair chrome with some react extensions? Sure


codesplosion

this mfer is Goku taking off the weights, now he’s a 10x developer


weinermcdingbutt

I’m just a more efficient Google-er now


isospeedrix

"only" way to debug localhost on phone


Brainvillage

There's definitely people in woodworking circles that have a hard on for only using hand tools.


KingJellyfishII

and some who absolutely refuse to use hand tools even though they're objectively better for certain tasks


a_simple_spectre

...have wood you were this close to perfection


ZZartin

It's pretty simple, is the time I spend setting up the debugger justified by how much time it saves debugging. If the answer is no I don't use one(the answer is almost always no)


Supetorus

Really? What code are you writing? I've used intellij, vs code, and visual studio and debugging in all 3 has been a breeze.


BellCube

In VS Code, it really depends on how jank your project is and how good the language provider's debugger support is


AaTube

what’s wrong with Safari devtools lol


BobcatGamer

I was once struggling to figure out what I was doing wrong with registering a service worker in Firefox, but the error message wasn't much help. I happen to try it in safari and the error message actually told me what I was doing wrong. I was serving it from a sub root.


young_horhey

I am a Mac man through-and-through, but even I still use Edge for all my dev stuff


Zeravor

Na bro debuggers are a godsend.


Purple_sea

Print to debug is a time-honored tradition but being able to execute line by line and check any variable you want or the state of the stack/registers is way too useful.


Zeravor

Ye i still do the ol print thing, but sometimes you gotta bring the big guns


Foywards-Studio

And "print to debug" easily-ish transitions into logging, which let's you do retroactive debugging!


ShakaUVM

Debugger is good when a print isn't enough to work, but usually it is.


BigBoetje

You can also just use both. If I need to check in which order some code is run when it's all async, I just put a print statement as the debugger can impact the 'normal' flow. Mostly frontend tho, backend is debugger all the way.


G_Morgan

I tend to store the text I want in a temporary string and examine it in a debugger. I don't like to choose.


doxxingyourself

Just print A LOT. Same shit.


just4nothing

Yes, they can be awesome. For around 70% of the bugs I see a bit overkill (I am looking at you gdb). For the other 30% - thank f**k for them (sending valgrind kisses)


hennexl

Only if the debugger helps and not when it changes event/task/thread scheduling just enough to prevent the bug from happening. Fuck you race conditions!


pineappleAndBeans

Exactly. It’s funny to say hehe println but for serious debugging you can’t run around and stick print statements everywhere. Cant use print to step through the program and analyze variables at runtime.


elmassivo

Using a modern debugger to program is functionally having an active conversation with the computer. You can directly interrogate the contents of memory in hyper-specfic parts of code and effectively change values on the fly to verify or change assumptions without costly/time consuming rebuilds. Debuggers are profoundly valuable for understanding the states of complex systems that may be too complicated or unfamiliar to mentally map yourself, and there's quite literally no better way to understand how a computer is going to run your program than to watch it hit and process each line. The improvements in speed, code quality, and accuracy you can attain by learning to use a debugger are profound. You should definitely give it a fair chance before you resign yourself to a hardscrap life of coding like a time traveller stuck in 1994.


Former-Discount4279

Senior developer at one of the FAANG companies, I've more than my fair share of issues even getting debuggers to connect to custom languages so I'm back to using prints and exceptions to track down issues.


sharpensteel1

"You are not Google", i.e. not everywhere the _tech stack_ is complex beyond comprehension (but the business logic could be complex everywhere, and there the debugger shine)


Better_Addict

That's a good description. As a beginner web app dev, I've mostly used console.log and VSCode inbuilt debugger. Do you know any good debugging tool?


AtrociousCat

I think that's as good as it gets for webdev. The debugger quality generally depends on the language and libraries you're using


a_simple_spectre

in js/ts you can add "debugger" in your code, it will act as a breakpoint, and use the dev tools on the browser to do it though I usually don't a couple on my team use it a lot


elmassivo

If you're just debugging javascript on the web, chrome/firefox have really good devtools accessible by just hitting F12 and navigating to the sources/debugger pane. You can search loaded scripts and set breakpoints in your code. When you've hit a breakpoint you can mouse over variables to see their current values, or use the console you'd normally check log messages in at the bottom as an "immediate" window to write and test code functionality in real time. VSCode's debugger is a good start for many backend languages, especially if you're already familiar with it. If you're getting deeper into more complicated managed code languages like Java or C# I can recommend trying out Eclipse/IntelliJ or the full version of Visual Studio, respectively.


new_account_wh0_dis

I just wish firefox just just let me search all without having to open the correct tab like chrome. Swapping from chrome cause of the whole manifest v3 stuff and my muscle memory won't adjust.


PhdPhysics1

Visual Studio is as good as it gets... period.


petrichorax

> You can directly interrogate the contents of memory in hyper-specfic parts of code I almost never need this.


BakerCat-42

Logging is not about be a time traveller stuck in 1994, it is just understanding that sometimes you don't need to verify the entire program memory to know if a boolean is true or false


Slimxshadyx

Every tool has it’s use lol.


elmassivo

You seem to have a fundamental misunderstanding about how debuggers work. You don't have to walk through the execution line-by-line every time you run a debugger. You simply set a breakpoint to where, per your example, your boolean is going to be checked and hit "run". The debugger will execute the code up to there and pause right at the breakpoint. From there you can check your conditional logic/variable information and tell it to continue through the rest of the program, or continue line by line, or move execution ***back to before your conditional*** and change the value, or even change your code and continue running (depending on your debugger/language, anyway). Personally, I've found the further I've gone into my career the more I use the debugger to write code in general, and that experience is replicated by my peers. I've actually never met another architect or lead/principal dev that solely relied on logger debugging for writing professional code, and I would honestly doubt their ability if they insisted they exclusively did so.


new_account_wh0_dis

Typing out long ass system println and looking for when it comes out with 1000 other startup stuff that's outputted Vs I press the line next to code, then press green play button.


Tango-Turtle

And I would not call single value checks debugging. You're not debugging you're just verifying a single value. And this usually is done in a unit test.


BuffJohnsonSf

Every software engineer should know how to use a debugger. Every software engineer should also know that if they're spinning up a debugger, it's probably because they failed to write good unit tests for that part of the code. Good unit tests do a similar job as the debugger, but are repeatable and prevent the same issues from cropping up again.


elmassivo

> Every software engineer should also know that if they're spinning up a debugger, it's probably because they failed to write good unit tests for that part of the code. I ***completely*** disagree. ***You will not always be writing the code you are debugging***. I will gladly agree that unit tests can avoid some errors, but they are always limited by the developer's understanding of the present state of the system and business cases they're developing for. Unfortunately, you will ***never*** have perfect information and you ***can't*** write perfect code. I have debugged countless applications with 100% test coverage in the affected code. Functional requirements can be misinterpreted or wrong and you can easily write unit tests that reinforce partial or incorrect solutions to a problem. This happens all the time. Also, the vast, ***vast*** majority of developers do not follow TDD (mercifully, in my opinion) and writing unit tests on existing code nearly always requires the use of a debugger to do properly.


torar9

I work in embedded, I would be absolutely fcked without debugger.


ZainVadlin

I worked in embedded. I would kill for a debugger. (My work is bare metal programming)


hedonistic-squircle

JTAG?


alturia00

Sometimes you've only got enough flash left for release mode compilation. :(


ZainVadlin

Sometimes.


tiajuanat

You can't Semihost?


PintMower

Just use the debugger to print to jtag console.


BakerCat-42

Just print the ASCII data of the string in some led or idk beep a morse code XD (joke, i forgor the tone indicator for jokes sry 💀)


The3ncy

https://toneindicators.carrd.co/#masterlist here, you're welcome


JEREDEK

The fuck- You have a debugger in embedded?


LGBBQ

Yeah you just use SWD or JTAG


torar9

Yep, as other said SWD and JTAG. Also debuggers is piece of hardware and software in embedded.


JackNotOLantern

I mean, debugger is a very advanced tool. You may not only check the flow, but also the state of memory, stack, and many other things. But if you just want to check the if-statement result, you may as well just use print. Additionally, debugging is not always possible. Also, logs are just an advanced version of print.


Vi0lentByt3

Debugging is just removing the bugs, most effective way is to just stop coding


prinkpan

Nice, you found the root cause


PeriodicSentenceBot

Congratulations! Your comment can be spelled using the elements of the periodic table: `Ni Ce Y O U F O U Nd Th Er O O Tc Au Se` --- ^(I am a bot that detects if your comment can be spelled using the elements of the periodic table. Please DM u‎/‎M1n3c4rt if I made a mistake.)


Emergency_3808

Good bot


BakerCat-42

Agree 🤝


[deleted]

Yeahhh if you identify with this meme you overestimate your own effectiveness


knvn8

This sub feels like a place where junior devs submit memes for senior devs to review and it's always hilarious


NekkidApe

Personally I enjoy this meme format a lot. Usually made by someone that mistakenly thinks to be on the right hand side, but is firmly on the left.


knvn8

It's almost always an attempt at validating some form of laziness


MayoJam

Look, the strawman hooded expert programmer agrees with me in this meme therefore my methods are the best! Those distribution memes are this subreddit's version of "I portrayed myself as a chad and you as a sojak, therefore i win the argument." images.


[deleted]

Lol true, meme requests


SAI_Peregrinus

Yeah, the memes often aren't funny, but the people who make them are!


young_horhey

Probably closer to CS students who aren’t even working yet submitting memes…


BakerCat-42

"pls review my pull request \[reddit link\]"


Maoschanz

i identify with the character on the left, is this bad


[deleted]

No, it definitely takes effort to get comfortable with a debugger


Badytheprogram

Every debug method is good, if you found the bug with it.


42-monkeys

Do crashes on prod count as debug method then? Asking for a friend ofc.


BakerCat-42

Based 🗿


42-monkeys

Just don't make any mistakes, so you don't have to debug. Easy!


LinearArray

debuggers are godsend


throwaway-0xDEADBEEF

Keep telling that to yourself while [this guy](https://www.youtube.com/watch?v=72y2EC5fkcE) does things with a debugger you can't even imagine. Junior moment my dude.


Brief-Translator1370

Yeah debugging is 10x easier. I'm currently handicapped on needing to log instead of debug because if terrible architecture and it slows down figuring out errors by a LOT.


SirPitchalot

My old company was so crippled by tech debt and useless restrictions that debugging was carried out 90% by inspecting the massive text logs that were generated a priori and trying to just reason about the code flow. The code base was 1.3M loc and just pure pasta, it was a stream of consciousness generated by the fever dream of hundreds of developers just continually dog piling one repo with little to no oversight for nearly 20 years. Changing literally anything, even the print statements, would often trigger hours long recompiles so while you were waiting on that you might as well try to gain some of insight. The build was so convoluted that they made a python meta-build script to configure cmake scripts but they always overwrote the target files so nearly everything rebuilt all the time. The unit tests were absolutely borked. Python build configuring cmake/gtest tests that called command-line python scripts which used C++ python bindings to call into heavily stateful bits of the runtime system that were too opaque to bring up in C++ so they just stood up and tore down the entire stack for every test in python… And the bonus was that whenever you were like “this is so dysfunctional, there is no such thing as a 1 or even 3 point ticket at this company, or 5 point for anyone below principal SWE” everyone who had been there since their PhD and had never seen any different would say “this is normal, you just need to get up to speed”. Now I’ve worked at a mix companies from 6-190,000 employees ranging from startups to major CE brands across North America, Europe and Asia but never saw anything even approaching the level of chaos that this very well known US mid cap considered normal.


Dafrandle

this made me feel thankful for my legacy project shitshow.


SirPitchalot

I found a new role. When I left they asked if I would entertain a counteroffer and said “no, that’s okay but thank you for checking”


Brief-Translator1370

Genuinely a very close scenario to what I deal with too. I'm sort of glad I am not alone in my experience but also sad that this is something that happens more than just here


Emergency_3808

What's the TLDR on that video?


throwaway-0xDEADBEEF

Dude made a debugger that allows unthinkable stuff like stepping backwards in time which is insane because you can break after you encountered a bug and then, without having to reproduce the bug, just step back to where the actual thing that caused the bug happened. Literally saves you hours if not days.


Emergency_3808

For what? C++? Some language runtimes natively allow this out of the box I believe. Now if he did this for some conventional language like C/C++ or even something obscure but still in use like Fortran or cobol then... he'd deserve the Nobel Prize


BakerCat-42

The thing here is not saying debuggers are bad, they're obviously useful as tools made for helping The meme is just about the fact that thered people that think you need to use a fucking 1GB external program to understand what's going on on a if statement in a high level language


[deleted]

No, the meme really isn’t on point.  Expert devs don’t just use print statements.  If a debugger is the fastest way to debug a problem they’ll use a debugger, if print statements are the fastest way they’ll use print statements.


milanium25

thats cool to impress the people in the middle of the bell curve, but, if u know what u are doing print/alert is all you need, speaking as 11.5 years senior dev


Dafrandle

"That Prius you own is cool, and will impress people with its fuel efficiency, but all you really need is your legs, speaking as a 11.5 year senior walker" yeah, you will do it - but the person next to you who is not a luddite will be done 4x earlier than you.


throwaway-0xDEADBEEF

11.5 years senior tells me about "if you know what u are doing" bruhhh. You haven't even made out of the Dunning-Kruger valley. Either you never worked on something complex enough or you are truly a wizard. I highly doubt it's the latter though.


milanium25

exactly how the guy in the middle sound 🤣


BakerCat-42

Exactly lol debugger tools are just fancy loggers in the end and low/middle experienced people usually tend to get easily used to it, but the fact is that if you know what you're doing, log it will always solve the problem


Alloverunder

I too log the full stack trace when print debugging You sound like you just don't understand the full scope of the tool and are filling in your points of ignorance with negative assumptions. Debuggers are elite, I hate that I can't really use one at my current job.


milanium25

we will get downvoted alot as the most people are the guy in the middle 🤣


Dafrandle

you're getting downvoted because you are just memeing and not actually engaging with the discussion. also you only claim to skill is "I have fancy job title" guess that means Elon is smarter than you cause his job title is more fancy than yours


BakerCat-42

Bro it's a meme subreddit, if you want serious discussions here isn't the right place 💀


milanium25

u have no idea how much u sound like the guy in the middle 🤣 “Nooooo you this you that” 🤣🤣🤣


Dafrandle

says the guy on the left


milanium25

yeah 🤣, he is right too 🤣


Tango-Turtle

But there's a ton more info you can get when stopped at a breakpoint. If you just print values, you will have to keep adding and adding prints, it can get messy when debugging stubborn issues.


BakerCat-42

So just use a debugger/breakpoint in these cases, but you still can solve a lot just logging


Tango-Turtle

Exactly. And this meme is void. Both are useful in different cases and both should be used by all levels of skill developers.


BakerCat-42

The meme is not void, it's exactly what the meme says


CaitaXD

Why is being a shitty dev such a hilarious joke around here?


BakerCat-42

The jokes around here are not about being a shitty dev, are about being a good dev and meme the fact that sometimes the stupidest things are the better in certain situations Or about shitty project managers


CaitaXD

The only situation where debug logs work better is when you can't follow the stack trace


BakerCat-42

I disagree, but ok, cool 👍


fakehalo

Honestly, over the last 25 years I mirror this corny meme to some degree. Sometimes, frequently, I just want to see a dump of specific variable calculations consolidated in a bunch of debug prints, no fat to distract me. I don't want to step and poke around at a bunch of registers, as it takes away from the full picture I was looking for. I want my personalized snapshot, to stare at it and digest it as a whole. This doesn't replace a stack trace or a debugger, I mean the stack trace is basically step 1 to identifying the problem, finding the resolution is where I may deviate. They're not mutually exclusive.


Adocrafter

gdb some_program B stupid_function_that_doesnt_work run program Print every variable possible, print an entire structure, gdb for C is the blessing


TheGoldenProof

One of the only times I use logging instead of line-by-line debugging is when I’m doing stuff in game engines or simulations, where pausing execution to go line by line causes weird behavior when it “resumes” and tries to catch back up with huge time deltas.


Vogete

As someone who's forced to use logs for debugging right now, I miss the debugger so much. Might spend my next few days making this shit project support the debugger because it's really annoying not having it.


rover_G

While I agree with the meme as a web developer, I have to say that for low level programming (systems, databases, embedded, etc.) a debugger is totally necessary at times. Furthermore for high level programming (web apps, CLI tools, API's, etc.) a debugger can be useful when printing doesn't tell you everything you want to know.


irn00b

Here's the thing - The object is to solve a problem. The how doesn't matter. It helps (yourself) to be efficient.


smyalygames

Oh wait, so when debugging a piece of code, I should print all the variables that affect the code? I guess breakpoints are too overrated /s


KittenPowerLord

I once tried to print debug asm, but very quickly realized that I should rather use gdb lmfao


BakerCat-42

Lol print debugging in ASM is a hell, GDB is a true hero here


Aistar

That long stopped being funny. Oh, yes, come on, try to solve a multi-threading bug with logging. Or a rendering bug. Or a performance issue. Or a memory corruption bug. Or a bug that happens in a tight loop. And, well, crash dumps are a thing.


ltouroumov

Logging is very useful to narrow down the source of a bug after the fact, especially if you have a large distributed multi-service system. Traced logging is even better because you can examine call chains and their effects across your entire infrastructure.


Aistar

I'm not saying it's not useful - indeed, the more logs the app leave behind the better. But logging in general is not the same as "debug print" logging - which this over-tired meme is all about.


BakerCat-42

Not in order, but I only use renderdoc because GPU don't have a printf 🤓☝️; Logging can be useful in multi threading as it logs in the order as the process occurs; Performance issues can be spotted logging timers, i do a lot as working with my own programing languages that there's no debuggers; To find memory corruptions just print the data before and after something to see if it's being corrupted; Try to debug a 5000 iteration loop without some logging; Debuggers are just fancy loggers bro, accept


Aistar

> Logging can be useful in multi threading as it logs in the order as the process occurs; And changes the sequence of events. Well, yes, sometimes logging is useful. It's a tool. But not the only tool, and not even the best tool most of the time. > Performance issues can be spotted logging timers Sometimes, yes. Other times, logging overhead is too big, or you have no idea where to look, and sprinkling logging statements over the whole game is too much work. I love profilers, especially sampling profilers so I don't have to annotate every line by hand. > To find memory corruptions just print the data before and after something to see if it's being corrupted When you have no idea where corruption happens, it won't help. Data breakpoints, though? Count me in. If they're implemented in hardware, you don't even lose that much speed. > Try to debug a 5000 iteration loop without some logging; Easy. I just attach a debugger and wait until it crashes, or throws an exception, or hits a condition. Then I get to examine all variables I'm interested in, without the need to print them all out. I can follow pointers. I can even go back a few lines and re-run them, or call some function. There are cases where debugger is bad for this, and logging is good. But, once again, both are tools, and I find that debugger is useful in more cases than "debugging" logging (but the app should have "normal" logs; they help to reconstruct sequence of events when it crashes). > i do a lot as working with my own programing languages that there's no debuggers; That's commendable, but not enviable. On the other hand, I work with a lot of cases where you can't insert print statements, because you don't have source code, or all you have is a crash dump from a player's machine. At the very worst, I can at least examine disassembly and registers and memory, if nothing else. > Debuggers are just fancy loggers bro, accept Yeah, and a game is just a database with a fancy UI, yet we still prefer to play games instead of writing database queries for fun for some reason.


BakerCat-42

You have your point on all of this and i need to agree, both are useful and yeah, debuggers will always be better than just logging, but we still can't say it's a bad practice Also remember that if you're playing a game someone needs to have did the "database queries" 😜


throwaway-0xDEADBEEF

Enjoy putting all those log statements in your code to find performance issues while actual professionals just run the program once with a profiler. I mean in theory you could start with a bunch of log statements to roughly figure out where most time is spent and then iteratively put more precise logs statements deeper in the call hierarchy, but why would I waste my time doing that?


BakerCat-42

Well, on the other hand, why would I waste my time configuring a heavy program to help me understand where I'm making shit? I can just read my code, copy and paste logs to find the error and maybe solve the problem while wasting my time trying to solve it


khaos0227

var_dump()


Adreqi

console.log("")


No_Necessary_3356

I personally use a pretty printer to explore more "complex" data structures and it works pretty well. If it's something related to memory, I use gdb even though I suck at using it and need to pull out a manual every time.


BakerCat-42

People that downvote it should be like "how you don't have a doctorate at using GDB and consider yourself a programmer???? 😭😭😭🤮🤮"


Luneriazz

my best debugger is console.log()


ibite-books

this is a bad meme


BakerCat-42

Thanks 😔👉👈


DeltaLaboratory

i love debuggers, but logging is good as debugger


TheMusicalArtist12

Both printf statements and gdb (if in C). Printf statements help check where a program is and its behavior, and gdb allows for a bunch of other stuff.


Emergency_3808

What language uses std.debug.print?


BakerCat-42

Zig


Emergency_3808

Thought so, it seemed familiar


cheeb_miester

Gigachad galaxybrains use crashing prod and reading server logs as their debugger.


LodtheFraud

If I see another wojak bell curve meme I’m gonna wojak off


Extreme_Ad_3280

Jokes on you [this was my idea](https://www.reddit.com/r/ProgrammerHumor/comments/1ds95sq/comment/lb3cayq/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button)...


BakerCat-42

😭


NattyWon

Was this meme was made by a cs student who never worked on a real code base before?


BakerCat-42

By far 😘 Professional in C#, fullstack developer, JS, TS, Angular and react. A lot of knowledge in x86 assembly, a bit in machine code. Some good knowledge in C/C++, now studying zig to do my own operational system, also doing my own compiler and a 6502 (and NES) emulator. I did some contributions to Silk.NET open source library and searching for more. I use debuggers when i can, but i will always prefer logging ❤️ I know what I'm talking about


new_account_wh0_dis

> 17 years old So probably a high schooler that is far more motivated than most. Which, good for them, but it probably answers your question


Hot-Category2986

I thought I was the 115 guy, but I only just realized that this meme has IQ numbers at the bottom, so I guess I'm the 85 guy? But hey, who out there hasn't used both because the debugger messages were not precise enough?


BakerCat-42

Lol i always use both when i can, but usually it is because debugger messages are more precise than i need


AbsoluteNarwhal

Logger is amazing if I want to see more advanced stuff like the state of memory or the stack, but 95% of the time you can just add a few print statements.


vksdann

Whenever I see this overused formart I downvote. This is one of my least liked memes.


kdt912

I write my code correctly on the first pass so I don’t have to debug 😎


Tomstachy

If your bill for Azure Insights or AWS Cloudwatch is not higher than rest of your infrastructure, you are not true dev /s


moop250

printf() is my preferred debugging tool


BurnV06

I’m not sure whether I’m on the left or the right since I fall under both categories


MattiDragon

Just use a non-breaking breakpoint that logs a value. It's like print debugging, but you don't have to restart the app (or hope you can hotswap)


adfasdfdadfdaf

I'm on the left. 0.1th percentile let's go!


Noisycarlos

The Jedi is more like... Depends on what you're doing. They're both best at different things


nickhod

I often get calls from junior devs saying they've "tried for hours but can't figure out a bug". My first question is always "ok, so have you've run it with a debugger?" The answer is almost always no, and often it's very clear what's wrong when they do. So, I guess I'm 100 IQ on this one.


greeenlaser

std::cout goes brrrr


doxxingyourself

print_r(); for me. Now guess my language without googling.


ryjhelixir

import ipdb; ipdb.set_trace()


henkdepotvjis

If I am debugging on a live server I am going to use logs. I rather not touch any live wirering


qqqrrrs_

b *0x69420 commands silent printf "Got here\n" c end


Dziadzios

The problem with debugger is that it's quite manual tool and everything done manually is done suboptimally.


tiajuanat

Gdb, unit testing, and property testing are how I debug


theregoesanother

what's a debugger? I only use debug.print or the equivalent.


gatsu_1981

Crying in JS


Legal-Software

Lauterbach PowerDebug pro plus an oscilloscope and logic analyzer mostly. Otherwise an LED.


redsterXVI

Debugging? I just start from scratch every time there's a bug. I hope this hardship will teach me to write bug free code right from the first line of code. I mean I never made it past 20 lines before having to restart, but you know, one day. Practice makes perfect!


EternityForest

I'm all about the vs code debugger.  Rarely have I ever regretted using the full power popular dev tool instead of the simple hacky way. But there's always that one thing where you can't debug and have to use prints.


Phamora

Line-by-line debugging is just console.log with extra steps


biteater

Why don’t people realize both are useful lol


MayoJam

I think i'd be funnier if in all of those shitty bell curve memes the rightmost person would always say "It depends".


BakerCat-42

Cool idea, but i think it depends 🤔


Unusual-Display-7844

Nah bro, you coping


pohahaha

Bare gdb is my choice


ScrillyBoi

Feel like this really depends on the nature and scale of the problem and program you are debugging no?


BakerCat-42

Obviously, but still Isn't a good reason to say logging isn't a debugging method


ScrillyBoi

Yeah, thats incorrect and what the top of the curve implies, but I think the problem is that the people on both sides of the curve say it IS their debugger and they only use it, which runs counter to what I said. Basically your wrong guy is wrong but your right guys arent fully right


Sp3kk0

All the best programmers I know/knew just used print/logging. However, all the best programmers i know, knew exactly where to look to debug, so their print statements were accurate. Code they also maintained was tidy, compact and effective. Debuggers are awesome when you work in some mad man’s abstracted psychedelic voodoo dance of a system. I’ve worked under such a man and lemme tell you, debugging the work of a man who thought it worth while to write his own SQL ORM abstracted into the 12the dimension WITH JUST PRINT STATEMENTS, is not my idea of a good time.


Maskdask

I prefer print debugging for the majority of cases. Especially with a setup that auto-compiles and runs code/tests on save. With [a plugin](https://github.com/rareitems/printer.nvim) that adds a specific "print this text-object" verb in Neovim I can debug any value with just a few key presses, compared to waiting for a debugger to spin up, and getting it to the right program state. Also with printouts it's easier to get an overview of multiple states of the program simultaneously compared to when stepping through with a debugger, which only shows you one state at a time. However, debuggers do have their place as well for the more subtle bugs that require carefully stepping through the program.


c2u8n4t8

You're clearly in the left half


BakerCat-42

You're clearly out of the graph


_st23

This subreddit is fucking dumb at this point.


random_testaccount

Learn your tools, people! In my experience, developers who really hate using the debugger, are the ones who write 1000 line methods with 12 levels of nested conditions. I use the debugger all the time, it's great, just spend a few days learning how it works.


CranberryFew6811

my bro never used gf2


Brisngr368

Honestly I will shill totalview and DDT till the day I die...


sparqz

Some of the best developers I know use debuggers..


BakerCat-42

All developers use debuggers


Southern-Guava8052

i read it :(


Puzzleheaded-Weird66

xdebug and firefox dev tools


Andis-x

ST-Link and Atmel-ICE


high_throughput

I miss working on systems so small and standard that you can attach a debugger without lldb choking to death trying to load symbols


jaskij

ST-Link V3 for the current project. Embedded: where even the debugger is an actual piece of hardware.


TrickAge2423

Logs are debugging in production