top | item 25249568

(no title)

pritovido | 5 years ago

A very important thing with software is that the most painful work can be done by the computer itself.

Tools like Lisp are essential in your toolbox for whatever language you use for coding. If you can script and automate and test everything life is much better.

Most of the pain in software development is self inflicted. The most boring something is for a human, the easiest is for the computer to make it.

Lots of people coming from the "code must be efficient" front, like assembly, c and c++ programmers simply ignored the interpreted, functional and painfully slow "you don't know how things are implemented" world and viceversa.

But both worlds are complimentary.

When I was a kid I discovered Numega SoftIce. That was an incredible debugger and you could automate everything.

Turns out you can do the same with gdm and lldb today and bugs just pop up from automatic tests.

discuss

order

unnouinceput|5 years ago

SoftIce is in another league of itself. No other debugger can fully freeze your OS while you hunt down that elusive crypto variable that the other developer obfuscated in several DLL's in order to hide its true purpose.

Man, so much fun was back then.

Story time. One of my clients wanted to reverse engineer a trading algorithm and the only option was the nuclear option. Fully disassemble and in-memory hunting this encrypted, split into different DLL's function that was holding the entire algorithm. Warned the client that would take as much as half a year and can possibly run up to more than $100k. He accepted saying if it's successful then it can gain him millions. So I started the hunt. A few weeks down the road, my client, while we were chatting the usual status and whatnot, dropped the bomb. This algorithm was actually old, as in WinXP era. And I asked "do you have a WinXP variant of this that you'd be satisfied with if I manage to reverse it?". And he said he has. I took that one, prepared a WinXP machine with SoftIce in it and job was done 3 days later.

The level of control you have with SoftIce, you can't achieve it with anything else.

voldacar|5 years ago

Is there something that would make it impossible to write the equivalent of SoftIce for Win7/Win10, or has it just not yet been done out of difficulty/laziness/lack of market/etc?