notime
On the main wikipedia page, you cut off the full definition: "A compiler is a computer program (or set of programs) that transforms source code written in a programming language (the source language) into another computer language (the target language, often having a binary form known as object code). The most common reason for wanting to transform source code is to create an executable program."
Note how it says "the target language, often having a binary form known as object code." and "The most common reason for wanting to transform source code is to create an executable program."
If you then go down into the description, you'll see: "The front end checks whether the program is correctly written in terms of the programming language syntax and semantics. Here legal and illegal programs are recognized. Errors are reported, if any, in a useful way. Type checking is also performed by collecting type information. The frontend then generates an intermediate representation or IR of the source code for processing by the middle-end.
The middle end is where optimization takes place. Typical transformations for optimization are removal of useless or unreachable code, discovery and propagation of constant values, relocation of computation to a less frequently executed place (e.g., out of a loop), or specialization of computation based on the context. The middle-end generates another IR for the following backend. Most optimization efforts are focused on this part.
The back end is responsible for translating the IR from the middle-end into assembly code. The target instruction(s) are chosen for each IR instruction. Register allocation assigns processor registers for the program variables where possible. The backend utilizes the hardware by figuring out how to keep parallel execution units busy, filling delay slots, and so on. Although most algorithms for optimization are in NP, heuristic techniques are well-developed."
So, just stating that it is "a computer program that transforms source code written in a programming language into another computer language" is inadequate. There is more to it than that, and unfortunately so many just don't get it.
(2) You will frequently work less than a day and charge for a day. This will of course keep some employers from hiring you, because they'll worry about your higher effective rate that what they would calculate for an 8 or even 6 hour day. But, let's say that they hire you. At some point, you'll send an email stating that you are done with the feature earlier in the day rather than later, because you have somewhere to be that night and don't want to forget, and then this puts the seed in their head that you didn't work a full day, and that for all they know, you may do that everyday with them if they aren't communicating with you all day to determine you are working for them.
(3) Although potential employers may attempt to do the math and convert what they perceive as your hourly rate based on your daily rate to what they get out of other hourly workers, much of the time, they won't want to bother. If anything, if I were trying to estimate your hourly rate, I'd divide your daily rate by 4 and assume that is basically your effective rate. And that is probably not right.
Then there is the whole thing about the perceived amount on your bill. It may seem higher if they see your daily rate vs. an hourly rate, even if it is less.
And without a recruiter, you are going to be missing out on a lot of candidates. I personally have gone through this recently and know small companies that either tried to do this themselves or with a minor (not heavy hitting) recruiter, and finding people that way is SO SLOW.
So basically, this advice is good for interviews once you can get people in, but you won't be able to change the fact that the process to getting people in will stay the same.