User:Extreme.coder

From Wikipedia, the free encyclopedia

This is a Wikipedia user page.

This is not an encyclopedia article. If you find this page on any site other than Wikipedia, you are viewing a mirror site. Be aware that the page may be outdated and that the user this page belongs to may have no personal affiliation with any site other than Wikipedia itself. The original page is located at http://en.wikipedia.org/wiki/User:Extreme.coder.

eXtreme c0der
eXtreme c0der


This user comes from India.


01 This user is an computer engineer.


C I die for this.


ASM For optimization and complete control.


Linux I enjoy freedom.


0x90 This user loves to hack.


Hi, welcome to the world of O's and the 1's. I spend most of my time writing codes in C, C++ and Assembly. I love to hack C codes and C language itself. Hacking for me is nothing but an art !, as it comes by nature and not by teaching. I love to learn stuffs myself.

The term "Hacker" is mis-interpreted as criminals. There are 10 types of people in this world, one who hacks for learning with good intent and the other for money with malicious intent. The former is called Hacker and the later one Criminal Hacker or Cracker.


Contents

/dev/hacker_definition

/dev/manifesto

/dev/real_programmer

/dev/articles

/dev/codes

/dev/projects

/dev/hacker_key

/dev/ezines

/dev/i_use












[edit] /dev/hacker_definition

The computer [hacker] has been depicted in the popular press as a socially maladjusted teenager whose goal is to wreak malicious havoc on unsuspecting computer users. In the culture of the computer programmer however, the hacker takes on a far different aspect. The true hacker is raised to heroic status with tales of amazing feats circulated through computer networks in the form of stories and legends. In this paper I discuss the persona of the true hacker, illustrated using hacker legends collected from the Internet.

[edit] What is it, then ?

You have probably read about computer hackers in the newspaper and seen stories on the evening news about gangs of teenage hackers breaking into computer systems and causing tremendous damage. If so, then your impression of what it means to be a hacker is likely be quite negative. The popular press tends to depict the hacker as a criminal, or at the very least someone who enjoys causing lots of people lots of trouble. He is usually teenage and very smart, but also socially outcast; the overall impression is often one of dangerous intellect of the sort you typically see only in spy movies. In the media's version, the goal of a hacker is often simply to cause computer systems to crash, but sometimes the goals are more directly criminal. Stealing long-distance phone service, credit card numbers, financial information, or other valuable forms of information are all targets of these dangerous individuals.

The term ``hacker has a very different meaning, however, amongst computer programmers. Although the media version of a hacker certainly exists, by far the majority of programmers do not engage in criminal activity. To the working programmer, the term ``hacker is much more likely to be used as a term of respect for another's programming abilities than as an insult. A well-known on-line lexicon of programming terminology, known as either The Jargon File or The Hacker's Dictionary, defines a hacker as:

 hacker n. [originally, someone who makes furniture with an axe] 1. A person who enjoys exploring
 the details of programmable systems and how to stretch their capabilities, as opposed to most
 users, who prefer to learn only the minimum necessary. 2. One who programs enthusiastically 
 (even obsessively) or who enjoys programming rather than just theorizing about programming. 
 3. A person capable of appreciating hack value. 4. A person who is good at programming quickly.
 5. An expert at a particular program, or one who frequently does work using it or on it; as in 
 `a UNIX hacker'. (Definitions 1 through 5 are correlated, and people who fit them congregate.) 

[edit] The Culture of the Programmer

To understand the heroic qualities of the legendary hacker, it is important to understand at least a little about the culture from which they come. The culture of the computer hacker is very young. Although I'm sure that there are analogous communities of people skilled in similarly complicated disciplines, the computer hacker culture is connected intimately with the electronic stored-program computer. Computers of this type have existed only since the 1950's. The stored-program qualifier is important. Although it seems obvious today, the idea that a program that controls the actions of the computer can be stored in the same type of memory that is holding the data that the program was working on was in fact a major leap of understanding for the early computer designers.

Computers are built from electronic components that, while complex in their manufacture and their organization into systems, are essentially nothing more than very small, very fast switches. Switching theory, which is the science of studying systems built from switches, is far older than computer science. Telephone systems are an example of a switching network where calls must be routed through a switching network to find the desired receiver. Railroads are another example of a switching network. Consider the problem of making sure that two trains will not try to use the same piece of track at the same time but in opposite directions. The railroad system is a system of switches that control where the trains go and which section of track they will use.

Both of these examples are related to the early examples of hacker culture, but the railroad example is of particular importance. The first computer hackers are generally agreed to have been students at MIT in the 1950's who were part of the Tech Model Railroad Club (TMRC). This club had (and probably still has) a huge model train layout that was the focus of the club activities. The subcommittee of the club responsible for the complicated wiring of the switches that controlled where the trains went were hackers waiting to happen. The switching network of the TMRC railroad was essentially a special purpose computer, but one where the programming was done either by changing wires, or by real-time control of the switch settings by the operator.

When these railroad-switch-hackers discovered the computers that were being installed at MIT in the 1950's, some of them immediately realized that these large, cumbersome calculating machines were exactly the type of things they had been struggling to create with the model railroad layout. Some would become enthralled with trying to figure out what they could make the computers do. This exploration, for the type of person who would come to be called a hacker, would be simply out of an intense desire to explore the limits of the technology. If the explorations resulted in programs that were useful to others, so much the better, but the motivation of the exploration was simply to gain information about and control over the computer. From the beginning, the hackers found themselves outside the traditional scientific community that was also trying to understand what could and could not be done with these new-fangled computers. It was the hackers, however, that understood how far the technology could really be pushed.

It was the hackers, working in the early hours of the morning because that was the only time they could get access to the machines, who first demonstrated that a computer could do the then unthinkable task of playing a game of chess. Hackers first demonstrated that the computer display could be used in an interactive way. That it, rather than simply be used for static status information on the machine, you could cause the machine to draw shapes that looked like spaceships and play games by causing the ships to move around on the screen and interact with other shapes. Hackers were the first use the computer in an interactive way for entering text. To an engineer of the day, using valuable computer time to simply enter text in an interactive text editor was unthinkable. It was the hackers who understood that interacting with the computer, rather than treating it as a hands-off behind-glass computation resource, was the way of the future.

Because they were operating outside of the official engineering and scientific culture of the day, the hacker developed a bit of an outlaw persona from the first. It's important, though, to make a distinction between a notion of outsider and that of a criminal. Prototype hackers were not criminal; they were simply operating outside the bounds of the established culture of the day. Working mainly at night, without formal scientific backgrounds or training, hackers were simply exuberant, fearless, non-conventional explorers of this new world of computing.

[edit] What about the Dark Side?

There are, of course, programmers who do fit the media's picture of the computer hacker. These programmers use their skills to cause trouble, crash machines, release computer viruses, steal credit card numbers, make free long distance calls (the phone system is so much like a computer system that is is a common target for computer criminals), remove copy-protection, and distribute pirated software. These people may also call themselves ``hackers, leading to more confusion. Hackers in the original sense of the term, however, look down on these sorts of activities. Among the programming community, and to a large extent even amongst the illegal programming community, these people are called ``crackers and their activities known as ``cracking to distinguish it from hacking.

The cracker definitely does not follow the Hacker Ethic. Even among legitimate hackers there are those who add to the Hacker Ethic the belief that system-cracking for fun and exploration is ethically OK as long as the cracker commits no theft, vandalism, or breach of confidentiality. It is the hacker who uses his skill for these latter purposes who has crossed over and become a cracker.

Crackers have their own lore, their own heros, and their own set of ethics distinct from the hackers discussed in this paper. They also have much more space in the popular press.

[edit] /dev/manifesto

  • This is our world now... the world of the electron and the switch, the beauty of the baud. We explore... you call us criminals. We seek after knowledge... and you call us criminals. We exist without skin color, without nationality, without religious bias... and you call us criminals. Yes, I am a criminal. My crime is that of curiosity. My crime is that of judging people by what they say and think, not what they look like. I am a hacker, and this is my manifesto. You may stop this individual, but you can't stop us all... after all, we're all alike.
  phrack - http://www.phrack.org/archives/7/P07-03

[edit] /dev/real_programmer

[edit] The Story of Mel: A Real Programmer

[source] In addition to the legends of hacker feats based on the exploits of real life hackers, there are also stories that circulate through computer networks that are not connected to any person in particular. There are also stories that feature a semi-anonymous hacker, perhaps named, but not identifiable as a real person. It is a story of this type that I offer as an example of one of the most well known hacker legends. It is called The Story of Mel, A Real Programmer.

The story is told in the first person as the storyteller remembers an encounter with a True Hacker named Mel. This is, to my knowledge, the most widely circulated hacker legend on the Internet and is often pointed to as the best way to begin to understand the culture of the hacker.

I have since discovered that the story was first posted to a Usenet newsgroup on May 21, 1983. The author, Ed Nather, originally wrote and posted the story in prose format. At some point during its travels through the net it was modified into free verse form. It is this free verse form that is by far the most common form of the story as it continues to circulate through the Internet today.

The introduction to the story gives the motivation for the reminiscence as a rebuttal to an article that makes light of current academic thought in computer programming by asserting that ``Real Programmers write in FORTRAN. The actual article to which The Story of Mel refers is one published in the computer magazine Datamation in 1983 entitled ``Real Programmers Don't Use Pascal by Ed Post. Pascal is a computer language designed by Nicklaus Wirth to promote so-called structured programming, which forces the programmer into a logical system structure the makes the program easier to understand and debug. FORTRAN is a computer programming language designed for engineering and scientific code, and is one of the, if not the, oldest computer language still in wide use today. As such it is a fairly primitive language when compared to Pascal, and extremely primitive compared to an even more modern language. Constructs that are easily expressed in a modern programming language (like Java, for examplegif) would require a hacker's skill to code in FORTRAN. The main point of The Story of Mel is that perhaps today's programmers think that programming in FORTRAN is hard, but if you look back just a little bit further you can find an example of a programmer who didn't even need FORTRAN to perform amazing feats. The first few stanzas set the stage for the story to follow:

A recent article devoted to the macho side of programming made the bald and unvarnished statement:

Real Programmers write in FORTRAN.

Maybe they do now, in this decadent era of Lite beer, hand calculators, and ``user-friendly software but back in the Good Old Days, when the term ``software sounded funny and Real Computers were made out of drums and vacuum tubes, Real Programmers wrote in machine code. Not FORTRAN. Not RATFOR. Not, even, assembly language. Machine Code. Raw, unadorned, inscrutable hexadecimal numbers. Directly.

Lest a whole new generation of programmers grow up in ignorance of this glorious past, I feel duty-bound to describe, as best I can through the generation gap, how a Real Programmer wrote code. I'll call him Mel, because that was his name.

Mel is most likely a fictional programmer, although the story is told as a true story and uses real machines and real languages as examples. This story is clearly written to be read by computer programmers and as such it is full of technical terms and jargon. The very feats that mark Mel as a Real Programmer described later in the story are amazing only to the person who knows something about programming. In a companion to this paper I have included the entire Story of Mel along with extensive annotations that should make it more accessible to non-programmers.

Mel comes from the golden age of hackers when computers were simple enough to be programmed by writing directly in the binary language of the machine. Digital computers process all information in binary notation. The nature of the switches used to build computers is such that the most fundamental operation a computer can do is simply recognize the difference between the representation of a 1 and a 0. If 1's and 0's are all the machine can understand at the most basic level, then programming directly in the language of the machine involves writing down long strings of 1's and 0's. There is a slight simplification of this notation that allows these numbers to be written in base 16 instead of base 2 (the hexadecimal numbers referred to in the first stanza), but the result is largely the same: a sea of mysterious numbers that is all but indecipherable to the normal person.

In order to make these programs easier to write and understand, they can be abstracted into a symbolic form. The first abstraction is assembly language, where machine operations are described in words and those words are translated into binary numbers by a program called an assembler. A higher abstraction would be a programming language like FORTRAN. Operations are described in a more abstract way in FORTRAN statements, the FORTRAN program is translated into assembly language by a compiler, and then the assembly language is translated into machine code by an assembler. With every abstraction, however, there is a loss of control. For complete control over the inner workings of the machine, direct expression in machine language may be required. Even in the days in which The Story of Mel is set there were assemblers available, but the amazing things that Mel was able to do required the absolute control that comes from rejecting the abstractions and programming directly in the machine's language.

The story describes how Mel used these numbers to control a cumbersome computer from the late 1950's to play blackjack, and how the teller of the story was assigned years later to understand and modify the program to change the odds in favor of the human player and let the customer win. In the end, the teller of the story discovers some of the amazing tricks used by Mel in writing his programs and decides to give up trying to modify the program: both because finding and changing the targeted part of the program would be very difficult, and also because of his awe and respect for the code of a Real Programmer and his feeling that as the work of a Real Programmer the code should not be altered.

[edit] /dev/articles

[edit] /dev/codes

[edit] /dev/projects

  • OM - A complete operating system written from the scratch, fully coded boot loader, kernel, video driver, keyboard driver and a simple filesystem
  • Ring0 - A operating system based out of Linux kernel

[edit] /dev/hacker_key

v4 sw6CS hw3 ln7 pr8OSP ck8 ma5 u7LF w4DX m5 l7FDRU i28 e6 t3 b8D en6 g4T aI s2M r8 p0

[edit] /dev/ezines

  • phrack - Phrack is an underground ezine made by and for hackers that has been around since November 17, 1985.
  • aware - for all the h0no wannabes out there and things like breaking PERL, Adjacent memory overflows, and outr0

[edit] /dev/i_use