??? 03/27/08 17:07 Read: times |
#152620 - Agreed Responding to: ???'s previous message |
Richard Erlacher said:
The reason people pay lots of $$$ for a Windows-based product is because they're too dumb, or too lazy, to learn how to use the free tools. Andy Neil said:
In very many cases, a command line is a very cumbersome and difficult-to-use thing - it's just not the natural way that people work. I agree. It's a matter of preference and the right tool for the job. I still do many things at the Windows command prompt and do the vast majority of my Linux management on the command line. But when it comes to development, I prefer an IDE. I like being in an editor and just clicking a menu option to recompile the project. If there was some reason for me to do compiling on the command line, I would (and I *do* in Linux)--but if I can get it done from an IDE, I prefer that. I don't consider myself dumb or lazy. And while not at all meaning to rip on free products, compilers like Keil do produce more efficient code. I had a project in SDCC that produced 28k of code. I eventually switched back to Keil and that went down to about 22k. Not to mention I've never had to do weird things to get Keil to compile the program. In SDCC I had instances where, if I recall correctly, I had to declare many functions as re-entrant so that the compiler would not run out of IRAM memory. For whatever reason, declaring the function as re-entrant (even though I didn't need it to be re-entrant) allowed the compiler to properly use all available IRAM whereas if I didn't declare those functions as such, I'd basically get memory overflow errors when I compiled--even though there was no good reason for it. It took me two or three days figuring out that work-around. I've never had to do something like that with Keil. And as has been said, valuing my time at what I bill, I would have broken even if I had paid for the Keil product in the beginning. Sure, I would have spent some cash to get the product but I wouldn't have spent 2 or 3 billable days trying to figure out a problem that was actually a problem with the compiler, not my code. NOTE: That was about 2 years ago. I'm sure SDCC has continued to improve since then. SDCC is an excellent choice for the vast majority of students and hobbyists, maybe even a good number of professional developers. Like I said, I did make it work for a professional project a few years ago because I didn't want to produce a product that required that my cash-constrained client would need to buy relatively expensive software to maintain. But when you start pushing the development envelope there are things that Keil can do much better than SDCC. Last year my client authorized me to switch to Keil precisely because the program size was 28k and we only had 31k available to us on the part in the project, and more features were upcoming. It was either a matter of switching to Keil or redesigning the product with a larger part. He chose Keil. Regards, Craig Steiner |