Hacker News new | past | comments | ask | show | jobs | submit login

I have coworkers who only use 2 of chromes debugging tools: the console and the network tab. They dont know about breakpoints, mapped typescript/react files, or local overrides. Every time they come to me with some issue they're facing, I have them set up breakpoints first before we do anything. Usually that's all that we need to do, and we figure out the problem in about 5mins



I usually recommend chrome dev tools to newer colleagues by saying that they are probably the dev tools with the biggest budget. No idea if I am right but so so many features.

That said, 95% of my usual problems can be debugged with the console. Often it is faster, easier to grok and does not interrupt flow as much as a forgotten breakpoint would.

console.time, console.count, debugger; (breakpoint set in code) and $0 (code ref to highlighted html element) are super useful as well. Usually that is enough before manually setting breakpoints

also nice to know: Safari is great for (offscreen)canvas debugging


In my humble experience, I know about them, yet I still never use them, I find it infuriatingly confusing to work with. The only time I've ever liked breakpoints and regular debuggers is when working with C, anything else feels off to me.


On a tangent, it is weird sometimes that people not always pick the right tool for the job, even if the effort is small and the results pay off immediately. Like slicing carrots using a potato knife or even a table knife.


Most people don't know all the tools at their disposal, or how to use them. I certainly don't and I consider myself above average in this regard.

Chrome DevTools has that issue since it's always changing, adding new things, and they're not discoverable/learnable from inside of it.

If you had a drawer of 50 kitchen implements, would you even think to search for the mandoline slicer if you didn't already know about it?


You are right. But what I wanted to say is, some people stick to very basic tools, even after you show them more convenient tools like a sharp knife with a firm handle and a knife sharpener. Often the switching part of the process seems to big of a hassle.


Yeah, I've shown the junior devs a dozen times how to set up breakpoints in VSCode and they still opt to console.log everything instead


I'm junior myself and this is so weird.


Chrome dev tools are an engineering marvel; the downside is it’s quite hard to find the perfectly shaped tool.

I spent about a week tracking down a memory leak in our web app. About 5 days in I discovered you could compare heap snapshots which led to the root cause of a chrome bug with hidden classes. The fix was to move object spread to the bottom of an object literal.

Here’s the bug. It was a fun one to hunt: https://crbug.com/v8/13303


If you'd care to list some of your most used - or most useful tools - I'd love to read it. I suspect that I don't even know about most tools available to web devs.

For what it's worth, I stick to server-side for most of my work. But occasionally I have to fix something on the front end - whether it be a UI issue in CSS/HTML or a real problem in Javascript. So a quick mention of those front-end tools available and what they do would be great. Thank you!


Not him but I use typescript with webpack. Webpack has webpack serve, which runs a simple HTTP server that shows an index.html for testing your script. It adds some file watchers on your source so if you make any changes it automatically compiles. Webpack will build the .map files so you can run breakpoints in your browser on the original source, but if you develop with vscode, you can create a launch profile which allows you to attach your vscode debugger to the browser and put your breakpoints in VSCode instead of the browser (which I prefer the UI for). This works with react as well


Thank you. I have been learning React lately (as a backend developer, I love it) and this will be helpful. I've considered using webpack or one of the competitors - there are so many that I've simply just avoided them until now.


> breakpoints

Because they suck. Afaik there is no way to setup triggers like

break if variable X created

break if variable Y >= 123

break before calling Z web api/method


Chrome and vscode both have conditional breakpoints:

https://developer.chrome.com/docs/devtools/javascript/breakp...


line-of-code, cant set global ones, when I want to know if some object is used I need to manually hot patch/proxy it. One other drawback is inability to disable debug() call. Debugging third party/hostile code is real pain.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: