Live data from Hacker News

Unix as IDE

sanctum.geek.nz

61–70 of 214 posts

Re: Unix as IDE

#61
post #34

Earlier quoted context omitted.

If you can't debug with just print statements, you're doing it wrong :)

"My primary debugging tool is Console.Writeline(). To be honest, I think that's true of a lot of programmers." --Anders Hejlsberg If Anders Hejlsberg does it, there's no shame in it.

With prints and a backtrace function, you can make up for a most debugger usage. But for tracking down heap corruption, a debugger with memory breakpoints is the bees knees.

Re: Unix as IDE

#62
This instantly brought to mind the classic 1984 book, The Unix Programming Environment, by Brian Kernighan and Rob Pike [1]. Note that they call Unix a programming environment, not an operating system. This book shows that the original purpose of Unix is to be a tool for writing software.

[1] https://en.wikipedia.org/wiki/The_Unix_Programming_Environme...

Re: Unix as IDE

#63
post #18

Earlier quoted context omitted.

Someone fixed that. My emacs came with good modal editing out of the box. Maybe your emacs is broken. Try spacemacs.org. (runs)

Modal? I want composable .

With evil-mode, which is what spacemacs is based on, you get it.

Re: Unix as IDE

#64
post #34

Earlier quoted context omitted.

If you can't debug with just print statements, you're doing it wrong :)

"My primary debugging tool is Console.Writeline(). To be honest, I think that's true of a lot of programmers." --Anders Hejlsberg If Anders Hejlsberg does it, there's no shame in it.

There's no shame in it but that doesn't mean that it's the best or most efficient way of doing things.

I've found that stepping through code in a debugger at a human pace, and getting to really understand what's happening when a bug occurs is invaluable.

Re: Unix as IDE

#65
post #50
post #38

Earlier quoted context omitted.

> This was how Unix was presented to me when I was first introduced to me. I was told it was like industrial machinery - designed for those who know how to use it, efficient, dangerous if you aren't careful. Which is exactly what a good tool should be. The problem is that this is a whole lot of cargo cult. It does have the efficient parts, but it also has a lot of accumulated cruft, archaic limitations, arbitrariness…

> The problem is that this is a whole lot of cargo cult. Please do explain. Where do I use symbolic representations of technology to attempt doomed magic rituals? As far as the rest of it, everything accumulates cruft. That's why people write new things. And yes, there have been bad decisions. (Just, IMHO, meaningfully fewer than other OSes.) But perhaps I'm blinded by my cargo-cultish ways, can you point to an archa…

symbolic representations of technology to attempt doomed magic rituals

I believe that's the official tagline for GNU Autoconf?

Re: Unix as IDE

#66

Earlier quoted context omitted.

http://blog.vivekhaldar.com/post/3996068979/the-levels-of-em... "It was all just text. Why did you need another application for it? Why should only the shell prompt be editable? Why can’t I move my cursor up a few lines to where the last command spewed out its results? All these problems simply disappear when your shell (or shells) simply becomes another Emacs buffer, upon which all of the text manipulation power of…

xiki

Not the same thing at all.

Re: Unix as IDE

#67

Earlier quoted context omitted.

Back when I was working on embedded, I typically wouldn't even bother looking at the debugger. They never helped. The general workflow, when presented with a new system, was something like: (a) Board would arrive. Admire it for a bit. (b) Look suspiciously at the supplied CD. Gingerly insert it into computer. Oh, look, a Windows install.exe. Insert it into the Windows computer next to mine (with its screen and keyboa…

There there... This is why I have a stash of whiskey at my desk ;) (though honestly I haven't touched it in a while. Impairs debugging, really)

That's funny, at my old job we actually called whiskey "debugging fluid"

Re: Unix as IDE

#68
post #64

Earlier quoted context omitted.

"My primary debugging tool is Console.Writeline(). To be honest, I think that's true of a lot of programmers." --Anders Hejlsberg If Anders Hejlsberg does it, there's no shame in it.

There's no shame in it but that doesn't mean that it's the best or most efficient way of doing things. I've found that stepping through code in a debugger at a human pace, and getting to really understand what's happening when a bug occurs is invaluable.

One problem with this, is that your code often ends up in a state where only step-through debugging works anymore. It might become too complex to reason about just looking at the code, from the types alone, or by printing data.

Same problem happens with other methods too: If you develop solely with unit and integration tests, it might actually be quite difficult to get a step-through debugger set up to debug your application. I worked at a company where I was the only one who used a step-through debugger, and some uses of compile-time metaprogramming would frequently break the debugger.

And if you use multiple techniques as appropriate(unit tests, printf or equivalent, step-through debugging), it's generally easy to use any of them as appropriate.

Re: Unix as IDE

#69
post #34
post #33

It lacks the I in IDE. Those different tools are not integrated. In a java IDE the debugger steps through your source in the same editor view that you just used for editing. You can hover over each identifier while you code or debug to get the docs in a floating panel. Editing incrementally computes compilation errors while you type. Content assist has complete knowledge of the types at your caret position and thus c…

If you can't debug with just print statements, you're doing it wrong :)

You smile, but that's a harmful load of shit in a world that has an ever-increasing hunger for software that doesn't suck

Re: Unix as IDE

#70
post #64

Earlier quoted context omitted.

"My primary debugging tool is Console.Writeline(). To be honest, I think that's true of a lot of programmers." --Anders Hejlsberg If Anders Hejlsberg does it, there's no shame in it.

There's no shame in it but that doesn't mean that it's the best or most efficient way of doing things. I've found that stepping through code in a debugger at a human pace, and getting to really understand what's happening when a bug occurs is invaluable.

Like every other tool in programming, different people have different preferences and experiences. Symbolic debuggers have always ended up being a waste of my time, but I don't try to extrapolate from there to everyone else's preferences.
Post reply on HN