2009/6/24 Hal Vaughan <h...@halblog.com>: > > On Jun 23, 2009, at 10:57 AM, 明覺 wrote: > >> 2009/6/23 Hal Vaughan <h...@halblog.com>: >>> >>> On Jun 22, 2009, at 10:10 PM, 明覺 wrote: >>> >>>> 2009/6/23 Hal Vaughan <h...@halblog.com>: >>>>> >>>>> On Jun 22, 2009, at 8:00 AM, 明覺 wrote: >>>>> ... >>>>>>>>> >>>>>>>>> Looks like a strange idea to me to run a "one programming language >>>>>>>>> only" >>>>>>>>> system, it would hint that there's a "one fits all" language and >>>>>>>>> other >>>>>>>>> are just for decoration purpose... (Well, some may agree I guess >>>>>>>>> ;-) >>>>>>>>> ) >>>>>>>> >>>>>>>> yes, currently, I'm almost a "one programming language only" people, >>>>>>>> I >>>>>>>> can accept the existence of other languages, but I think they should >>>>>>>> be optional, not necessory! >>>>>>> >>>>>>> Necessary for what?! For you to use a computer? It seems as though >>>>>>> you're being unreasonable (on many fronts), but if you are not fan of >>>>>>> certain software, then don't use it. Don't bitch about how it was >>>>>>> developed. Those folks (eg., gnome, X.org, etc.) produced a product >>>>>>> the way that they did and then offered it to the masses for free. >>>>>>> >>>>>>> <cliche> >>>>>>> Beggers can't be choosers. >>>>>>> </cliche> >>>>>> >>>>>> you treat yourself a begger, I'm not, I'm a chooser. Happy begging to >>>>>> you! >>>>> >>>>> A rose by any other name is still a rose. You can call yourself a >>>>> chooser, >>>>> but your actions show you to be a begger. >>>> >>>> Thanks for the long reply! >>>> I still do not think I'm a begger, as I have decided to work on the >>>> MikeOS, which is a assembly language programmed free OS. Of cause, >>>> currently I need to use Vista or Debian for everyday life, but my >>>> heart is on my own programmed OS, and I hope I will switch to my own >>>> OS after some years. >>> >>> You're a beggar. You want what you want from other people in an easy >>> format >>> so they've packaged it for you. When you're asking others for something, >>> you're the beggar. You can TRY to also be the chooser, but if that were >>> the >>> case, and you were a chooser, then you'd be selecting from several >>> available >>> choices. >> >> I don't agree with you, I'm just looking for some people who have the >> same thinking with me, I'm not begging from them, for they also need >> my paticipation very much. > > 1) You're being literal and focusing on exact meanings, instead of > interpreting the entire idiom. > 2) We all look at our situation and interpret it with us having the highest > and best goals. None of us look at ourselves as clearly as those who look > from a distance. I sure know my ideal is far from the reality, but I think the meaning of life is to spend some time in realizing my ideal. > >>> >>>>> >>>>> First, when you look at what's in even just a minimal Linux install, >>>>> there >>>>> is no way you're ever going to get through working on more than a few >>>>> programs in the next few years. Second, when a programmer writes a >>>>> program, >>>>> if he has any wisdom (which is knowledge gained through experience, >>>>> hence >>>>> the more years, the more experience and the more wisdom), he will use >>>>> the >>>>> right tool for the right job. For instance, I need to use mainly Perl >>>>> and >>>>> Java, but have used many other languages. I find I can code 5x faster >>>>> in >>>>> Perl than Java and about the same, maybe better if I use Perl instead >>>>> of >>>>> C++. Hardly any of my Perl code is done as a wrapper for a C or C++ >>>>> program. It is valid code that does a LOT of work and does it well. >>>>> Since >>>>> it's text processing, to do the same work in C or C++ would be a >>>>> nightmare. >>>> >>>> If we setup proper C/C++ library for text processing, we can reach the >>>> same effect as Perl, why cannot? for any piece of perl code, I believe >>>> I'm able to write a piece of C++ code as simple to replace it, on top >>>> of a proper library. It's the same for python, java and other >>>> languages. I worked on C# for 4 years, it's also a very efficient >>>> language, but I can drop it, for I know, C# is just C++ with a good >>>> library, the .net framework, but its cost is an additional layer, the >>>> .net runtime and its intermedia language. >>> >>> There are C and C++ text processing libraries. They don't have the power >>> of >>> Perl or Python or other languages. C has been around for decades and >>> contributed to and worked on and used by many, MANY programmers. These >>> people have more experience than you or I and their combined experience >>> is >>> enormous. If C was such a great language for doing every thing out >>> there, >>> and we'll use text processing as an example, why haven't these people >>> released libraries that do all that Perl does already? One answer is >>> that >> >> good question, why haven't released those C libraries? I will release >> one in the future, I'm sure I'm able to replace perl by C, including >> change C a little, but changing C a little is much better than >> creating a new language like perl. > > When you get into writing them, I think you'll see. Actually, it's kind of > funny to look at this and see a young and inexperienced programmer thinking > he's going to be able to do what many, many master programmers have never > felt appropriate or reasonably possible. This is one statement, of a number > that you've made, both to me and on the Debian list, that show you really do > not understand a number of important programming concepts and don't have a > clear idea of why there are different programming languages or what the > concept of "the right tool for the job" means. I don't mean that lightly. I will try to do it and to know why you think it's not appropriate or reasonably possible. > > C was written, as was any programming language, with specific goals in mind, > including how it handles all variables. It handles variables the way it > does for a reason. The same with C++. Did it ever occur to you that if it > was practical to use C to do everything Perl does, Larry Wall would have > just written the libraries for C instead of developing an entirely new > language? The Perl interpreter is written in C. If Larry Wall had wanted > to, he could have just set it up as library routines for C and C++, but he > didn't. Why? Because Perl functions differently than C. It thinks > differently than C. It is built for a different reason than C. I just had a look of Perl, its definition is a general programming language, with powerful text processing ability. A general language will surely have huge overlapping with any other general language without doubt. About its powerful text processing ability, my experience of using C# tell me that the text processing ability of Perl won't be better than .net framework, if you don't believe, you can find a example of regular expression usage of .net framework on msdn. All the things implemented in .net framework can be moved to C++ without doubt. I don't know why the creator of Perl didn't integrate the functions of Perl into C/C++, but I'm sure it can! > > This is a VERY IMPORTANT concept in programming, one which you have utterly > failed to grasp. Without understanding it, you can be a fair programmer, > but you'll never be a good or great programmer. A major part of programming > is to look at the situation, the task and goal, and the resources available > and to decide what the best solution is, in terms of human time, computer > resources, and everything else available, then working with that to produce > a tool that best fits the job. It's about being able to sense what is > needed and to move with the flow and to change and adapt to the situation. > That is the art of programming and hacking: being able to change and adapt > to the situation and produce quality code that works without taking forever. > A major part of that is working with the appropriate tools, not carrying > one tool around and saying it'll do everything. My purpose is to make one tool and saying it will do everything, as microsoft is also doing. > > As you've had pointed out to you, the Perl and Python scripts in Debian have > been written by excellent programmers with far more experience than you have > in this field. If C where the best language for the job, don't you think > they would have used C? They didn't. Ask yourself why. And no, it's not > because they are lazy. It's true you can handle string manipulations in C > and C++, but due to the nature of the language and the nature of the human > mind, a programmer that tries to parse command line input and handle strings > in C and C++ will have FAR more errors in their code than if they write it > in Perl or Python. Their accuracy, and therefore the usability of their > code for others is greatly increased. I believe those excellent programmers are not lazy, but they do not have time to make the integration, .net framework is done by the whole energy of microsoft company, it's not an easy thing, to do it, one must have the ability to change the language, to change the compilers, and to extend libraries, it's very hard, so they chose the easier way to build a new language on top of C, instead of changing C itself. > >>> Perl works differently. Dealing with strings that can change in length >>> is >>> frustrating under C and C++. When you have to deal with all the low >>> level >>> stuff in C to handle strings, it gets tedious and leads to a LOT of human >>> error. Also, the more complexity you add to those libraries, the more >>> chance of bugs that will be hidden for a long time creeps in. >> >> I don't think such processing in C or C++ will be a difficult thing, >> even in asm, it won't be difficult. > > That's absurd. Java has better string handling abilities than C and C++ > already. Why bother with ASM? Or do you mean asm as short for Assembler? > If that's so, then you're re-inventing the wheel needlessly. First, if you > are talking Assembler, anything you write will have to be ported for each > CPU, which will be a major pain. Second, I used to program exclusively in > Assembler, and yes, it will be difficult. That you can make such a > statement shows that your programming experience is quite limited and that > you really haven't tried to do something like that. If these things were so > easy, they'd have been done by now. My meaning is any good functions of a language can be wrapped as a function, that's a block of code, and then others invoke those functions, so it's the same for either assembly language or C/C++ language, it's easy. But as I wrote befor, the difficulty may be to change the language itself and the compilers. > >>> >>> Perl is designed from the ground up for text processing. So is sed and >>> so >>> is awk. All three are designed so one can put together something in a >>> very >>> short time that is quite powerful and easy to set up. Say you were >>> working >> >> I believe Perl or python now has some advantages than C/C++, but my >> way is to integrate their advantages into C/C++. > > Again, this shows you've missed a major point. With all the time that those > languages have been around, if there were a need for those advantages, > wouldn't they be there already? Yes, they would. I don't know why, maybe programmers are busy in doing applications, or hired by microsoft to develop .net framework, no one pay attention to the bottom languages. > >>> for me. I'm not going to pay you for five days of work to write a >>> program >>> in C or C++ to process text when you could write the same program in a >>> single day. So there's no reason, on the job, to be such a purist. CPUs >>> are fast enough and memory is cheap enough there is no reason to write a >>> text processing program in C or C++ (which really are two distinct >>> languages >>> -- if you've conversed with any purists in the Usenet groups, you'd refer >>> to >>> them as two separate languages and not lump them together so easily) when >>> you can put the same program together in Perl in, often, 1/5 the time. >>> >>> For example, my business is to retrieve data from web pages and online >>> dial-up systems, then process that data and put it into useable forms. >>> For >>> instance, I have to scan names, find the commas, and change them so the >>> family name comes last, not first. That sounds easy, but I have to allow >>> for middle names, middle initials, titles, suffixes, and more. I wrote >>> the >>> routine that does that in a few hours Perl. I can tell you from >>> experience >>> if I had written that in same routine in C++, which would give me more >>> options than in C, it would still have taken me a number of days and >>> would >>> have taken a lot longer to debug. What possible reason would I have to >>> spend the extra time to do the same work in another language? >>> >>> I've put it in business terms. Now, in personal terms, when you look at >>> what you're doing, think about the programs you want to write within your >>> lifetime as hobby work, not as job work. Now think about what else you >>> want >>> to do in your life as well. Do you want to date and get married? Have >>> kids? Play a sport? Watch movies? Go out with friends? Let's break >>> time >>> into evenings and assume you work during the day. You get home and you >>> look >>> at what you want to do. You want to write specific programs to do >>> things. >>> You can write a program in, say, an evening, if you do it in Perl or >>> Python, or maybe 2-4 evenings if you use Java, or maybe 4-6 evenings if >>> you >>> write it in C++. >> >> I can accept slow progress in my work, but I cannot accept too many >> overlappings among different languages. In fact, I don't think I will >> be slower than you if I become familiar with my C/C++ libraries. > > THEY DON'T OVERLAP. Again, that's a statement from you that shows you do > not understand many major concepts of programming. You might as well decide > to only use on spoken language for the rest of your life or to only use a > carpenter's hammer instead of a ball peen hammer or to use only one type of > pliers. Look at a tool box that has pliers, channel locks, wrenches, needle > nose pliers, adjustable wrenches, vice grips, and more. All those tools are > for gripping something and either holding it still or turning it. You can > look at them and say they overlap, but each is used for a specific purpose. > You can use a pliers to turn a nut on a screw, but it has a good chance of > damaging the nut. You can use C++ for a lot of text processing, but your > accuracy and usability of the resulting code will not have the quality that > the same program, written in Perl, will have. The DO OVERLAP, and OVERLAP VERY MUCH. A language is not just a hammer, it's a set of all the tools, my opinion. > > And yes, if you learn the C++ or C libraries, you will still be slower than > doing the same work in Perl. Note I did not say you will be slower than I > will be. Again, this statement shows a complete misunderstanding of the > world of programming. I was not comparing one programmer to another, I was > pointing out how it can take much longer to write a program in one language > compared to another. For example, I know both Perl and Java well, but, on > average, it takes me 5 times longer to write a program in Java than to write > the same program in Perl. Why? Because of the nature of the language. > There are many things I have to do in Java that I don't have to do in Perl. > Adding functions by creating your own classes won't solve that problem. If > it did, I would have been creating those classes in my personal Java library > along the way to speed things up. As I said, C# won't be slower than Perl in text processing, so C++ will have the same power as Perl. > > And that's also the case with C or C++. They are low level languages. Do > you understand the concept of high and low level languages? You're trying > to take a low level language and turn it into something it is now. You're > going against the very nature of the tool you claim to love. It's like > taking a hammer and trying to make it into a nail driver and saying, "But > this will be purer than the nail driver. It's a pure tool and it's better > and right this way." No, it isn't. By trying to make one tool behave like > another, you're ignoring the work already done to make tools that do each > job well. I agree to make C as a low level language, but not C++, C++ is a high level language, and C++ includes C, so generally, we can use C++ as the behalf of C/C++. > >>> >>> Now you have a decision: How many evenings are you willing to sacrifice >>> to >>> write that program in C++ instead of Perl or Python? How many dates or >>> movies or nights at the bar with friends are you willing to give up so >>> you >>> can tell people that you're a purist and use only one language? And what >>> do >>> you gain by being such a purist that is worth giving up that much of your >>> life? How many of the programs you want to write are you willing to just >>> drop because you want to use a language that will slow your ability to >>> code >>> by a large amount? >>> >>>>> >>>>> If a program has to parse much user input or doesn't need extreme >>>>> speed, >>>>> or >>>>> has any of a thousand other specs, then it is better to write it in >>>>> Perl >>>>> or >>>>> Python and not C or C++. There are also a similar number of reasons to >>>>> write code in C and C++. You lament there is no distro for someone >>>>> with >>>>> your need. That's because it's a self-imposed, self-limited need that >>>>> no >>>>> wise programmer or administrator will want to meet. They're too busy >>>>> trying >>>>> to get their work done so they can go see their girlfriend or get out >>>>> and >>>>> go >>>>> ballroom dancing or meet a friend to go to the movies to stick with >>>>> only >>>>> one >>>>> tool when there are a myriad of tools, each one working for specific >>>>> jobs. >>>>> >>>> yes, if most people just stay on "making things done", i do not belong >>>> to that group, I want to keep things in the best way, of cause, "best" >>>> is judged by myself, not by all the people. If others think >>>> programming in many languages is the best way, I think programming in >>>> only assembly, C/C++ is the best way, if I need a script language, I >>>> will also make it the same language as C, just with the comipling and >>>> running at a press of enter. >>> >>> Yeah, I've heard that before. And you're talking about "best." And on >>> what >>> criteria? And how do you, a self described junior programmer, know how >>> to >>> rank best in a way that tens or hundreds of thousands of programmers with >>> years and, in many cases, decades, more experience, declare that one way >>> is >>> better when pretty much everyone with more experience tells you that >>> you're >>> wrong? >> >> I know why you all have the opposite thinking as me, for you do not >> want to waste time to figure out the inside of perl and python, you >> need time to dating and marry, so you just make use of perl and python >> to save time, but I do not care to waste time to integrate the >> advantages of all the languages into one. > > It's not opposite. I don't care if you figure out the inside of Perl and > Python. Go ahead. As for wasted time, when you're in your 50s and > wondering why you're never getting any sex and why all your friends have > grandkids that they love and adore -- if you have any friends, then you'll > likely look back and remember this. You've got one life. You're not only > wasting it if you spend all your time in front of a computer, but you're > wasting your programming time by trying to re-invent the wheel. As I said before, I must spend some time in my ideal, 8 hours for full-time job, 2 hours for part-time job, 2 hours for my ideal(work on the only one language system), 2 hours for girlfriend..., I think I can make a good arrangement. I do not care how fast my ideal can be realized, but I will keep working on it. > >>> >>> I know among the young there's always this idea that if you buck >>> conventional wisdom and keep fighting, one day everyone will recognize >>> your >>> genius and see you as a herald of something new and stunning. That's not >>> true here at all and this is not that type of situation. All of us >>> started >>> with one language and along the way we've all found one language that >>> just >>> seemed pure or right to us and was our favorite. >>> >>> This is also a case where there are ways to determine what is good and >>> bad, >>> what is great programming, what is best programming, and so on. This is >>> something that can be measured empirically and there are many >>> measurements >>> that show that C and C++ are not always the best tool to use. >>> >>> Yes, some use interpreters, which seems to be what you hate, but C and >>> C++ >>> need compilers (and in some cases do run on interpreters). The only >>> difference between an interpreter and compiler is basically when the code >>> is >>> interpreted. At one time people said that C was a good language because >>> it >>> was easy for compilers to produce small and fast native code, but that >>> argument no longer stands for many reasons. Compilers produce larger >>> files >>> now than before for a number of reasons and the code is rarely optimized >>> in >>> the ways it used to be. A good interpreter can do just as well and I've >>> seen benchmarks where some people have done better in terms of speed and >>> memory usage with interpreted languages than with compiled ones. >> >> if that's ture, it just means C/C++ compilers need to be improved. > > I can't believe the level of ignorance that statement shows. There are > reasons that compilers have changed and reasons that the code they produce > now has changed. I'm not going to go into all the reasons, since it's > clear, by now, that you don't want to listen to anything that supports > points you might not know about or you would disagree with, but if you > really want to understand programming, you'll research that and figure it > out. I just cannot believe a interpreter can be better than direct binary code, if it's true, it's surely the fault of compilers. > >>> >>> But if you want to insist on C and C++, remember what all of us told you, >>> when you're looking around and wondering what you did with your life when >>> other programmers are getting paid more because they can produce >>> excellent >>> code in many languages or when you notice that other people are getting >>> more >>> out of life because they're not spending all their time at the computer. >>> >>>>> If all you have is a hammer, then every problem is a nail, not a board >>>>> to >>>>> cut or a hole to drill or a nut to loosen. Limiting yourself to just a >>>>> hammer when all those other situations exist is blindly unwise. You're >>>>> doing the same thing by limiting yourself to only the C language >>>>> family. >>>>> You say you hate the other languages -- fine. If you want to cut off >>>>> your >>>>> nose to spite your face, do so. I hate Javascript, but I'm versant in >>>>> it >>>>> and use it when I need to. I sure as heck won't insist on wasting time >>>>> writing an applet in Java, taking, perhaps, a few extra weeks, when I >>>>> can >>>>> code it in HTML and Javascript in much less time and have it work just >>>>> as >>>>> well. To do otherwise would be wasteful of my time and I have way too >>>>> much >>>>> to do with my life to spend it sitting in front of an LCD screen when I >>>>> could be out with people and doing other things. >>>> >>>> If javascript was designed as a subset of java, the one you are >>>> familiar, I think you won't hate it, why javascript cannot be just a >>>> subset of java? it CAN! but the designers do not choose the best way, >>>> their fault make all the programmers suffer! We should not just >>>> accept, we should change it to the best way we think. >>> >>> This is like saying, "If apples were more like oranges, more people would >>> like oranges." There's no sense to it. Javascript and Java were >>> designed >>> with different intents and different purposes. Personally, I'm not >>> thrilled >>> with Java. But I use it for the software that goes on my clients' >>> computers. I wasn't thrilled with it, but I used it for a number of >>> reasons. I looked over many languages before I made my choice. I >>> considered Perl, C, C++, TCL, Javascript, OpenOffice's macro language, >>> and >>> even other languages before I settled on Java for that particular >>> application. Why? Because, in the long run, Java was the best tool for >>> the >>> job. It took me 3-4 months to do that job and if I had used C++, I can >>> assure you it would have been AT LEAST closer to a year to do it. >>> >>> Now as to making Javascript closer to Java, the two languages have >>> different >>> purposes and nowhere did it come up during the design to make a language >>> that I liked. Java is intended to be extensible, to provide certain >>> types >>> of security, and to provide true OOP. Javascript was designed to provide >>> a >>> small and fast language that a browser could handle easily. There are >>> advantages to Javascript using loosely typed variables and advantages to >>> Java's strongly typed variables. There are also advantages to Javascript >>> having a simple array structure and advantages to Java's more detailed >>> setup >>> that allows hashmaps, linkedlists, vectors, and many other data types. >> >> if loosely typed variables and simple array structures are advantages >> of javascript, I would like to implement these advantages in my only >> one language and then use a subset of it to do the dhtml programming >> intead of creating a new language called javascript. > > This is getting absurd. There are advantages to loosely typed variables and > to strong typed variables. The two are opposites. Again, you're showing > your inexperience and the extreme limit of your training and knowledge. If > one language overall was the way to go, the focus would have been, for > years, on unifying languages. It's not. Why? Because programmers need > different tools for different jobs. They are not opposite, in fact, C# has realized it already, supporting both loosely typed and strong typed variables. We can first learn some part of a language and learn other parts of the language later, in order to save time. > >>> There is really no purpose to creating a language just to be like another >>> language -- and that's a big part of the point that everyone is telling >>> you: >>> Each language is dramatically different in MANY ways and each one is >>> designed with specific goals and purposes. For example, if I want >>> something >>> simple to change the content on a web page and to only handle drop down >>> menus and other web features, I'll write a program in Javascript to do >>> that >>> (although with modern HTML, much of that can be done in HTML now). If, >>> on >>> the other hand, I need to be able to pull up a browser and go to a page >>> and >>> load in a program to let me remotely operate on data in a database, Java >>> is >>> excellent for that and Javascript is weak in comparison. I'd be a fool >>> to >>> write such an app in Javascript, just as I'd be a fool to use Java for >>> simple changes to the content of a web page depending on user input. >> >> you have got the benifit of different languages, but haven't you >> realized the overlappings among them, why you not try to remove such a >> overlapping so that our programmers can save more time? > > If you mean each language has some similar structures, such as WHILE loops > and IF..THEN statements, then yes, those are basic logic functions that most > languages need to use. Removing overlaps won't save time, it'll cost time. controling, text processing, array, file, network,...., so many overlaps, surely a waste of time. > >>> As to changing languages to the way we think: That's being lazy. Once it >>> was said that a language serves no purpose unless it changes the way >>> people >>> think about programming. When writing in Java, OOP (Object Oriented >>> Programming) is a great way to think and to work. While working in Perl, >>> while it allows OOP, it is not as useful a way to think about the task. >>> It >>> is our job, as programmers, to be able to adapt our thinking to the >>> different ways all the different programming languages work. >>> >>>>> >>>>> You say you are a junior programmer, which means you are learning >>>>> programming. Okay, LEARN. You've had advice from MANY people on this >>>>> thread who are senior programmers or hackers or system admins. It's >>>>> clear >>>>> they all have significantly more experience than you and they're >>>>> telling >>>>> you, "There is no point to what you're doing." Some are even pointing >>>>> out >>>>> how it will hurt your programming experience in the long run. >>>>> >>>>> It's your choice, but you've been well advised. There is a term for a >>>>> novice who ignores the advice of those with experience and then >>>>> proceeds >>>>> to >>>>> waste his time (the most precious commodity any of us have with a >>>>> limited >>>>> life span) trying to prove experience wrong and eventually learning the >>>>> wiser ones know what they're talking about. That term is fool. >>>> >>>> If that's the definition of fool, I'm fool, I do not like those wise >>>> advice. >>> >>> Fine. And one day you'll look back and wonder why you wasted so much of >>> your life on a point that was based more on misunderstanding the purpose >>> of >>> programming languages than on what you thought were matters of right and >>> wrong. >>> >>>>> I'm being blunt, but, honestly, I run a business on custom software >>>>> I've >>>>> written and I can do it because I learned from those who knew more than >>>>> I >>>>> did. If I refused to learn from people on this and other lists, I'd be >>>>> an >>>>> idiot and would still be wasting most of my life at the keyboard. I >>>>> found >>>>> one can save days, weeks, months, or even years, by listening to those >>>>> with >>>>> experience. You don't seem to want to listen to the experience of >>>>> many. >>>> >>>> yes, you are right, I'm wasting my time, If I didn't want to waste my >>>> time, I would still stay working for microsft by C# and visual >>>> studio.net 2008. >>> >>> While I don't think much of VS, there are many reasons to use C# -- and >>> that >>> comes from someone who has hardly ever had to use any MS programming >>> languages or products in his life. I was lucky: I used to program for a >>> hobby, then dropped it when I had too much going on in my life, but when >>> the >>> chance came to start a business and make a living as my own boss with >>> programming, I jumped on it and took it. I had to learn a LOT of new >>> programming languages to make it work, all from scratch and on my own, >>> but I >>> did. I was able to make the kind of decisions you want to make, about >>> right >>> and wrong. Almost a decade later I can look back and there are times >>> where >>> I insisted on doing it the right way. When I do look back, I see the >>> cost >>> and benefit of all I did. I found that sticking to what was basically an >>> arbitrary standard I set up cost me time and rarely produced better code >>> -- >>> as in both better designed and better functioning. On the other hand, >>> I'm >>> in my 40s and retired and can do what I want with the rest of my life. >>> (I'm >>> starting a film production company.) >> >> In fact I like C# very much, and I think microsoft is on the right way >> developing C# so fast and so strong, I believe C# will be the only one >> language for those microsoft programmers, but I'm a free software man, >> and linux kernel is written in C, the concepts of C# - object oriented >> and .net frameworks can also be implemented by C++, so I choose my >> only one language as C/C++, I have the same thinking as microsoft, but >> work on different field. >> By the way, congratulations to you for you succeed so early, I'm 28 >> years old, but have no success :( > > Even Microsoft doesn't believe C# will be the only tool for the job. If > they did, you would not be able to easily disassemble Microsoft byte code > into so many languages with one program by just making a few clicks of the > mouse. Microsoft is making huge effort to develop .net framework as the only one programming tool, it's true, I worked for microsoft for 2 years. > > As for no success, there's a reason for that, and I'm saying this to HELP > you. When I first read your post I thought you were just young and > inexperienced and trying to learn, which is why I figured it was worth some > time to say, "This is absurd and there's no reason to put all this effort > into something that has been rejected by the community so many times." Now > I think you have learned a little, yet you think you know everything. For > some reason you don't like the idea of interpreted or scripting languages, > so you've built up a big rationale to prove that you're right and others are > wrong. And now, instead of listening to the MANY people on the Debian list > who are trying to help, you are saying, "I'm right and I know I'm right and > all of you, those of you who have done well as programmers, those of you who > have contributed to open source software, those of you how have helped make > Debian a good distro, all of you are wrong and I'm right." Yet many of your > statements show you don't know enough about Perl and other languages to know > what you're talking about. You're just trying to justify your prejudice > against some languages. I'm trying to influence those excellent debian programmers to realize such a problem, maybe some time later, they will find my opinion is right, currently, they are just surprised by such a big plan. > > Programmers use Perl because it works for them. If you re-invent the wheel > by writing more routines for C, people will still do a lot of the work in > Perl. Even with more libraries, it'll still going to be easier to do the > same in Perl than in C++ because of other features of the languages. So if > you write those libraries to try to make it more Perl like, C programmers > who want to think like C programmers won't be making heavy use of them and > those who want to use Perl will use Perl. So 30 years later, what's > happened? You've written libraries most people don't care for, you didn't > get paid for it. Few people will care about it or you. Your efforts and > you will disappear into obscurity. No, I believe C++ programmers will use my library instead of using Perl anymore, if the library is good enough. > > If you like the idea of success (and that can vary, depending on how you > define it), then listen to those who have succeeded. Listen to the advice > people are giving you and drop the prejudice against other languages. I > originally avoided Perl because it was interpreted and when I used to > program in the 1980s had learned to be leery of interpreted languages, but > after I studied the current situation, I saw there were many reasons to use > scripting languages and many reasons NOT to use other languages. If I had > insisted on doing it all in C or C++ (I would have used C++), I would still > be spending most of my life in front of the computer instead of spending > 10-15 hours a week ballroom dancing. The plaques and awards I have won as a > competitive ballroom dancer would not be around to be seen, I'd have nothing > to show for that effort (and likely could never have made that effort at > all) and I'd still be the really fat person I was (so far I've lost 8 belt > notches through ballroom dancing) and I'd have a lot fewer friends. The > screenplay I'm working on now wouldn't even be an idea in my head and so > many other things in my life would not exist. I like success, but I prefer ideal, I believe my ideal will bring me friends and success and happiness. > > The success came from being able to find the right tool for the job and > using it. I started my system in TCL. At that time I had to borrow money > from people I knew just to pay for programming books I needed. (Now I have > two Mercedes convertibles in my garage, both completely paid for, and one is > an antique in excellent condition -- big difference!) I saw a Perl book > that was an early version for cheap and bought it out of curiosity. Within > 2 hours of picking up that book it was clear to me Perl could do the job I > needed it to do much better than my combination of TCL, awk, and sed. It > took me 2 weeks, but I redid it all in Perl and it was the best decision I > made in computer work. I had recognized the benefits of Perl in that > particular situation and I used it. I know, if I use C# to find a job, I will find a job soon, and good paid, now C# is like Perl at your early time, but if I will try to find a job by C++ instead, for C++ includes C, which is the linux kernel language, and C++ is able to do anything C# can do. > > I've used other languages. I have a program that controls a HD radio > receiver from a computer running Linux and it's in C++. It's an important > part of the LinuxICE distro, which is intended for computers in cars, and > what they use to control radios. I've written open source programs in Java > and other languages. The trick is that I pick the right tool for the job. You did a good job for reality, I will do a good job for future. > > If you want success, then listen to advice you ask for, don't just ignore it > and keep saying, "But I'm right and you're wrong." Listen to what people > say and be open to other possibilities. Sorry I can't, I still think I'm right, the reason is I will integrate all the benifits of different languages, without overlapping, that will waste our time. > > Otherwise at 68, you'll still be wondering why you've never had any success. Working on my ideal, there is possibility to succeed; working without ideal, totally no possibility. > >>> >>> What I did realize was that the people that told me of easier and faster >>> ways to do whatever I was doing were right. They had learned far more >>> than >>> I ever wanted to learn. I was looking at my small slice of the >>> programming >>> world and saying, "This is right and morally correct and artistically >>> good," >>> and people with decades more experience than I had were saying, "You >>> don't >>> know what you're talking about. Try this..." and looking back, after I >>> had >>> learned more, I realized there was no reason to ignore them, other than a >>> foolish pride that I had to be right and know more than these people who >>> had >>> decades more experience than I did. >> >> I have chosen the different way with you, my last leader was a 60 >> years old programmer, he told me to do web programming by xslt, for >> that's his experience and choice, but I refused, and lost my job, for >> I don't like the programming style of xslt, and like C# and javascript >> better. > > There is just no sense to that. Actually, it's deeper than that. Such an > attitude dishonors you and shows a total lack of respect for your employer. > It's also poor programming to demonstrate an inability to do the job with > the tools you were given. He might have had reasons you don't know for > doing it all in XSLT and it's possible by not using that, you limited the > usefulness of the work you did. Yes, that's my fault, so this time I will state clearly that I'm a asm,C, C++ programmer. > >>> >>> If you limit yourself to only C and C++, you're basically committing many >>> years of your life, and I mean that in hours of each day, month, year, >>> and >>> decade, to it and you're limiting your abilities to do good programming >>> and >>> to how much good programming you can do. Likely you'll end up burning >>> out >>> much sooner than you ever expected with far less accomplished than you >>> wanted -- and I say that not as a programmer, but as someone who spent >>> years >>> working in psychological treatment situations. >>> >>>>> >>>>> That's fine, but don't come crying to us in 3-4 years when you realize >>>>> how >>>>> much time you've wasted with such a capricious fetish. >>>> >>>> I will be poor in the next years for having no job, but I hope I won't >>>> cry >>>> :) >>> >>> I'm not talking about money. Do you want to spend most of your life in >>> front of a keyboard, staring at a screen, so that on your deathbed most >>> of >>> your memories are of typing at the keyboard and changing computer code, >>> or >>> do you want to remember back at the different things you did along the >>> way >>> and the variety of experiences you've collected? >>> >>>>> >>>>> I hope you read all the posts here again with an open mind and learn >>>>> from >>>>> them. If not, well, then, it's your life you're throwing out and >>>>> remember >>>>> that in 5-10 years when you look at all the youth you've lost. >>>> >>>> yes, I will lose my youth, and do what i like. >>> >>> Interesting how the young never value their youth until they've wasted it >>> on >>> lost causes. Look up the phrase "tilting at windmills" and see what it >>> says >>> and what it means. That's what you're doing. >> >> I will look up the phrase, thank you for your patient reminders, but >> currently I will insist in my own right way. > > Which is why you're not learning and not doing well. You have a brain and > are using a small part of it and thinking you know everything. Imagine what > you could do if you opened up and listened to people and used the rest of > your brain. I'm trying to use my brain in an elegent way, not in a badly organized way.
Thank you! I will keep telling you about my progress of my ideal. > > > Hal -- Gnu.Linux.(Debian|gNewSense).Gnome.(Mozilla|Gmail|Evolution|Scim|Flashplayer|Codeblocks) Microsoft.Windows.(Vista|XP).(QQ|Game|Notepad++) Gcc.Gtkmm.Opengl 初禪言語寂滅,二禪覺觀寂滅,三禪喜心寂滅,四禪出入息寂滅....于貪欲心、嗔恚心、愚痴心不樂、解脫,是為無上禪。 -- To UNSUBSCRIBE, email to debian-user-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org