Hacker is a term for both those
who write code and
those who exploit it. Even though these two groups of
hackers have different end goals, both groups use similar
problem-solving techniques. Since an understanding
of programming helps those who exploit, and an understanding
of exploitation helps those who program, many
hackers do both. There are interesting hacks found in both the techniques
those who exploit it. Even though these two groups of
hackers have different end goals, both groups use similar
problem-solving techniques. Since an understanding
of programming helps those who exploit, and an understanding
of exploitation helps those who program, many
hackers do both. There are interesting hacks found in both the techniques
used to write elegant code and the techniques used to exploit programs.
Hacking is really just the act of finding a clever and counterintuitive
solution to a problem.
The hacks found in program exploits usually use the rules of the
computer to bypass security in ways never intended. Programming hacks are
similar in that they also use the rules of the computer in new and inventive
ways, but the final goal is efficiency or smaller source code, not necessarily a
security compromise. There are actually an infinite number of programs that
6 0x200
can be written to accomplish any given task, but most of these solutions are
unnecessarily large, complex, and sloppy. The few solutions that remain
are small, efficient, and neat. Programs that have these qualities are said to
have elegance, and the clever and inventive solutions that tend to lead to
this efficiency are called hacks. Hackers on both sides of programming
appreciate both the beauty of elegant code and the ingenuity of clever hacks.
In the business world, more importance is placed on churning out functional
code than on achieving clever hacks and elegance. Because of the
tremendous exponential growth of computational power and memory,
spending an extra five hours to create a slightly faster and more memoryefficient
piece of code just doesn’t make business sense when dealing with
modern computers that have gigahertz of processing cycles and gigabytes of
memory. While time and memory optimizations go without notice by all but
the most sophisticated of users, a new feature is marketable. When the
bottom line is money, spending time on clever hacks for optimization just
doesn’t make sense.
True appreciation of programming elegance is left for the hackers:
computer hobbyists whose end goal isn’t to make a profit but to squeeze
every possible bit of functionality out of their old Commodore 64s, exploit
writers who need to write tiny and amazing pieces of code to slip through
narrow security cracks, and anyone else who appreciates the pursuit and the
challenge of finding the best possible solution. These are the people who get
excited about programming and really appreciate the beauty of an elegant
piece of code or the ingenuity of a clever hack. Since an understanding of
programming is a prerequisite to understanding how programs can be
exploited, programming is a natural starting point.
solution to a problem.
The hacks found in program exploits usually use the rules of the
computer to bypass security in ways never intended. Programming hacks are
similar in that they also use the rules of the computer in new and inventive
ways, but the final goal is efficiency or smaller source code, not necessarily a
security compromise. There are actually an infinite number of programs that
6 0x200
can be written to accomplish any given task, but most of these solutions are
unnecessarily large, complex, and sloppy. The few solutions that remain
are small, efficient, and neat. Programs that have these qualities are said to
have elegance, and the clever and inventive solutions that tend to lead to
this efficiency are called hacks. Hackers on both sides of programming
appreciate both the beauty of elegant code and the ingenuity of clever hacks.
In the business world, more importance is placed on churning out functional
code than on achieving clever hacks and elegance. Because of the
tremendous exponential growth of computational power and memory,
spending an extra five hours to create a slightly faster and more memoryefficient
piece of code just doesn’t make business sense when dealing with
modern computers that have gigahertz of processing cycles and gigabytes of
memory. While time and memory optimizations go without notice by all but
the most sophisticated of users, a new feature is marketable. When the
bottom line is money, spending time on clever hacks for optimization just
doesn’t make sense.
True appreciation of programming elegance is left for the hackers:
computer hobbyists whose end goal isn’t to make a profit but to squeeze
every possible bit of functionality out of their old Commodore 64s, exploit
writers who need to write tiny and amazing pieces of code to slip through
narrow security cracks, and anyone else who appreciates the pursuit and the
challenge of finding the best possible solution. These are the people who get
excited about programming and really appreciate the beauty of an elegant
piece of code or the ingenuity of a clever hack. Since an understanding of
programming is a prerequisite to understanding how programs can be
exploited, programming is a natural starting point.
0 comments:
Post a Comment