Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Assembly versus Programming

Assembly versus Programming

Scheduled Pinned Locked Moved The Lounge
csharpasp-netdesignhelplearning
51 Posts 30 Posters 4 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G gggustafson

    How many languages do you know that have gone through four major revisions in less than ten years?

    Gus Gustafson

    G Offline
    G Offline
    Gary R Wheeler
    wrote on last edited by
    #22

    FORTRAN, BASIC, PL/I, LISP, all assembly languages, ...

    Software Zen: delete this;

    G 1 Reply Last reply
    0
    • G gggustafson

      I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

      Gus Gustafson

      A Offline
      A Offline
      Aamir Butt
      wrote on last edited by
      #23

      You, Sir, got a 1-vote from me only because of this line: The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles Care to explain why you think so?

      A year spent in artificial intelligence is enough to make one believe in God

      G 1 Reply Last reply
      0
      • G Gary R Wheeler

        FORTRAN, BASIC, PL/I, LISP, all assembly languages, ...

        Software Zen: delete this;

        G Offline
        G Offline
        gggustafson
        wrote on last edited by
        #24

        Don't tell me the languages with which you are familiar. Tell me the ones that went through as many revisions as C#

        Gus Gustafson

        M 1 Reply Last reply
        0
        • G gggustafson

          I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

          Gus Gustafson

          G Offline
          G Offline
          Gary R Wheeler
          wrote on last edited by
          #25

          gggustafson wrote:

          The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target

          I call myself a .NET developer at the moment; I'm a software developer, and I'm currently using .NET. The term is therefore descriptive. I'll ignore your pejorative use of the term. 'Bloated framework'? The strength of the CLR is the fact that it provides well-documented and thoroughly tested solutions for thousands of common programming tasks, from data structures to user interfaces, multithreading, and so on. One key to being a proficient ".NET developer" is learning to look for functionality in the CLR before rolling your own. Big? Definitely. Hard to find what you need? Maybe; that's why God made Google. Bloated? Not hardly. 'Inconsistent with language design principles'? Whose principles? Yours? To my mind C# is a great language. I've got two years experience in C#, and over ten in C++. One of the principle defects of the C++ programming language is how the designers constrain language features due to their inability to satisfy a small number of edge cases. Document the edge cases, but give me the language features that make most of my life easier. Microsoft and C# do that.

          gggustafson wrote:

          When I taught the computer science core curricula at a west coast university

          I thought I detected the stench of academic piety.

          gggustafson wrote:

          programming is applied mathematics

          And the final piece of the puzzle is in place. I had a couple math professors in college who taught programming classes. While they understood mathematical principles behind programming, neither one could program their way out of a paper bag. This is a specific example of a general attitude you get from mathematicians: since they believe they can model anything using their field of expertise, they believe that makes them an expert in everything.

          Software Zen: delete this;

          G G 2 Replies Last reply
          0
          • A Aamir Butt

            You, Sir, got a 1-vote from me only because of this line: The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles Care to explain why you think so?

            A year spent in artificial intelligence is enough to make one believe in God

            G Offline
            G Offline
            gggustafson
            wrote on last edited by
            #26

            One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

            Gus Gustafson

            A R B 3 Replies Last reply
            0
            • G Gary R Wheeler

              gggustafson wrote:

              The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target

              I call myself a .NET developer at the moment; I'm a software developer, and I'm currently using .NET. The term is therefore descriptive. I'll ignore your pejorative use of the term. 'Bloated framework'? The strength of the CLR is the fact that it provides well-documented and thoroughly tested solutions for thousands of common programming tasks, from data structures to user interfaces, multithreading, and so on. One key to being a proficient ".NET developer" is learning to look for functionality in the CLR before rolling your own. Big? Definitely. Hard to find what you need? Maybe; that's why God made Google. Bloated? Not hardly. 'Inconsistent with language design principles'? Whose principles? Yours? To my mind C# is a great language. I've got two years experience in C#, and over ten in C++. One of the principle defects of the C++ programming language is how the designers constrain language features due to their inability to satisfy a small number of edge cases. Document the edge cases, but give me the language features that make most of my life easier. Microsoft and C# do that.

              gggustafson wrote:

              When I taught the computer science core curricula at a west coast university

              I thought I detected the stench of academic piety.

              gggustafson wrote:

              programming is applied mathematics

              And the final piece of the puzzle is in place. I had a couple math professors in college who taught programming classes. While they understood mathematical principles behind programming, neither one could program their way out of a paper bag. This is a specific example of a general attitude you get from mathematicians: since they believe they can model anything using their field of expertise, they believe that makes them an expert in everything.

              Software Zen: delete this;

              G Offline
              G Offline
              gggustafson
              wrote on last edited by
              #27

              I find your response offensive. I was a teacher while I was a senior member of the technical staff of a major company. Flaming does not become you.

              Gus Gustafson

              1 Reply Last reply
              0
              • G gggustafson

                I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                Gus Gustafson

                R Offline
                R Offline
                Roger Wright
                wrote on last edited by
                #28

                Any attempt to make a machine follow a set of predetermined execution steps is programming. Some approaches are more challenging than others, but all are programming.

                Will Rogers never met me.

                1 Reply Last reply
                0
                • G gggustafson

                  I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                  Gus Gustafson

                  C Offline
                  C Offline
                  Christian Graus
                  wrote on last edited by
                  #29

                  C# is a mature language that is also very consistent. I would agree that too many people drag and drop components and call it coding, but, they always did. Writing a decent website does involve some HTML, but it also involves a good amount of programming. At the end of the day, I'd say that a label is irrelevant, if you're doing it, then you know what it is, and what it means. I don't care what other people think of me, except my managers. For the record, I work on web and desktop apps and I don't think that one is programming and the other is not.

                  Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                  1 Reply Last reply
                  0
                  • G gggustafson

                    One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

                    Gus Gustafson

                    A Offline
                    A Offline
                    Aamir Butt
                    wrote on last edited by
                    #30

                    I guess you are right about bloat. But I don't think MS gives too much importance to Language Design Principles anyway. Their focus mostly seems to be ease for developers. That's why Visual Studio is like this with all the intellisense and debugging features etc. So, in that respect, C# follows this principle i.e., give developers freedom to do a lot of things in a lot of different ways. For language purists like yourself, these might be bad but for Application Developers, these features always come in handy to ship software quickly. On a similar note, I believe C++ is bloated as well because there are certain features which can be substituted by others. For example, you can achieve dynamic programming using Function Pointers, so on a theoretical level, why should we have Polymorphism and vitual functions? All of this can be achieved by smart programmers using plain old C-Style Function pointers. Your point is valid but only from a language design point of view. In real world, when you have to develop business applications real fast, its always good to have options provided that a programmer knows about majority of the pitfalls and black holes. I believe there has to be a trade-off between Language Design and Bloat. MS tends to lean towards bloat a bit too much even for my liking but I won't say C# is inconsistent and bad language only because of this.

                    A year spent in artificial intelligence is enough to make one believe in God

                    1 Reply Last reply
                    0
                    • C Chris Losinger

                      assembly is a huge support system, when compared to machine language. mnemonics? symbols? labels? luxury! and anyone who uses an OS is just a lazy poser.

                      image processing toolkits | batch image processing

                      O Offline
                      O Offline
                      Oakman
                      wrote on last edited by
                      #31

                      Chris Losinger wrote:

                      and anyone who uses an OS is just a lazy poser

                      I use Poser - oh wait, that's when I am doing graphics work -- never mind.

                      “Reality is merely an illusion, albeit a very persistent one." ~ Albert Einstein

                      1 Reply Last reply
                      0
                      • S smcnulty2000

                        And we didn't have zeros, we had to make do with the letter "O".

                        _____________________________ Give a man a mug, he drinks for a day. Teach a man to mug...

                        O Offline
                        O Offline
                        Oakman
                        wrote on last edited by
                        #32

                        smcnulty2000 wrote:

                        And we didn't have zeros, we had to make do with the letter "O".

                        I had toggle switches and lights that went on and off

                        “Reality is merely an illusion, albeit a very persistent one." ~ Albert Einstein

                        1 Reply Last reply
                        0
                        • G gggustafson

                          I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                          Gus Gustafson

                          P Offline
                          P Offline
                          PIEBALDconsult
                          wrote on last edited by
                          #33

                          I don't do that Web crap, but I still recognize it as programming/coding/development/whatever. I stick with backend and database because it's easier! Developing for the Web is like trying to nail a tree to some Jello.

                          1 Reply Last reply
                          0
                          • G gggustafson

                            As a programmer fluent in COBOL, FORTRAN, Pascal, C, Ada, and C# (in their order of being learned - without help from academia), I have never, in my long and jaded career, suggested that one language was better than another. Each has their purpose. And as a senior programmer at that, I may have had to suggest that one language was better for a particular task. But never that one was better than another.

                            Gus Gustafson

                            P Offline
                            P Offline
                            Pete OHanlon
                            wrote on last edited by
                            #34

                            As you deleted your reply to my post, I'll put it back up here for all to revel in: "I never said nor suggested that having a framework means that you can't program. Nor did I say or suggest that using one made you less of a programmer. But, in my opinion, the best, most stable framework that I've ever used was Win32. And it's still here, sitting behind .Net Gus Gustafson" Win 32 isn't a framework - it's an API.

                            Forgive your enemies - it messes with their heads

                            My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                            G 1 Reply Last reply
                            0
                            • G gggustafson

                              I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                              Gus Gustafson

                              R Offline
                              R Offline
                              R Giskard Reventlov
                              wrote on last edited by
                              #35

                              You get a 1 from me for being far too precious and more than a little condescending (though not entirely wrong). You miss the point: software is a tool for constructing objects that carry out a task. That's it: you choose the tool that best fits the job and get on with it. Right now the people that pay the money like the web so you pick a tool to create what they want so you can make some money. Anything else is frippery. On the other hand I see far too many young developers coming out of uni with no sense of discipline and an inability to figure it out for themselves. I'm not sure if it's that the youngsters today are the problem or the tutors not teaching their subjects properly.

                              "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair. nils illegitimus carborundum me, me, me

                              P 1 Reply Last reply
                              0
                              • G Gary R Wheeler

                                gggustafson wrote:

                                The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target

                                I call myself a .NET developer at the moment; I'm a software developer, and I'm currently using .NET. The term is therefore descriptive. I'll ignore your pejorative use of the term. 'Bloated framework'? The strength of the CLR is the fact that it provides well-documented and thoroughly tested solutions for thousands of common programming tasks, from data structures to user interfaces, multithreading, and so on. One key to being a proficient ".NET developer" is learning to look for functionality in the CLR before rolling your own. Big? Definitely. Hard to find what you need? Maybe; that's why God made Google. Bloated? Not hardly. 'Inconsistent with language design principles'? Whose principles? Yours? To my mind C# is a great language. I've got two years experience in C#, and over ten in C++. One of the principle defects of the C++ programming language is how the designers constrain language features due to their inability to satisfy a small number of edge cases. Document the edge cases, but give me the language features that make most of my life easier. Microsoft and C# do that.

                                gggustafson wrote:

                                When I taught the computer science core curricula at a west coast university

                                I thought I detected the stench of academic piety.

                                gggustafson wrote:

                                programming is applied mathematics

                                And the final piece of the puzzle is in place. I had a couple math professors in college who taught programming classes. While they understood mathematical principles behind programming, neither one could program their way out of a paper bag. This is a specific example of a general attitude you get from mathematicians: since they believe they can model anything using their field of expertise, they believe that makes them an expert in everything.

                                Software Zen: delete this;

                                G Offline
                                G Offline
                                GuyThiebaut
                                wrote on last edited by
                                #36

                                I gave you a 5 because you put into words what I would have said myself. As for your response being met with "I find your response offensive." - I find it no more offensive than the original post - you have just pointed out what is the case in your experience(and my experience :laugh: ).

                                Continuous effort - not strength or intelligence - is the key to unlocking our potential.(Winston Churchill)
                                1 Reply Last reply
                                0
                                • G gggustafson

                                  I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                                  Gus Gustafson

                                  C Offline
                                  C Offline
                                  Christian Graus
                                  wrote on last edited by
                                  #37

                                  gggustafson wrote:

                                  Another is the failure to recognize that programming is applied mathematics.

                                  That's not actually true, not even remotely. And, the fact you use the word 'assembly' to mean anything other than low level programming, shows you're not a programmer, not really. But, you're welcome to your views, and I'm sure they are most applicable to the ivory tower you appear to live in. :-)

                                  Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                  1 Reply Last reply
                                  0
                                  • G gggustafson

                                    One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

                                    Gus Gustafson

                                    R Offline
                                    R Offline
                                    Rick York
                                    wrote on last edited by
                                    #38

                                    one minor point : user32.dll is not actually part of .net. It is part of the operating system and has been around since windoze 95.

                                    1 Reply Last reply
                                    0
                                    • R R Giskard Reventlov

                                      You get a 1 from me for being far too precious and more than a little condescending (though not entirely wrong). You miss the point: software is a tool for constructing objects that carry out a task. That's it: you choose the tool that best fits the job and get on with it. Right now the people that pay the money like the web so you pick a tool to create what they want so you can make some money. Anything else is frippery. On the other hand I see far too many young developers coming out of uni with no sense of discipline and an inability to figure it out for themselves. I'm not sure if it's that the youngsters today are the problem or the tutors not teaching their subjects properly.

                                      "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair. nils illegitimus carborundum me, me, me

                                      P Offline
                                      P Offline
                                      Paul M Watt
                                      wrote on last edited by
                                      #39

                                      digital man wrote:

                                      On the other hand I see far too many young developers coming out of uni with no sense of discipline and an inability to figure it out for themselves

                                      I think the internet has a bit to do with this. It has made certain programming tasks a commodity. You can find bits and chunks of code that does what you need at the moment, but don't quite understand it, tie it together and ship it. Developers can function quite well with this strategy for new code. The problem appears a year or two later when that app with no structure needs to be maintained. I am not saying this is how most developers work, but I have worked with many of them that do.

                                      1 Reply Last reply
                                      0
                                      • G gggustafson

                                        I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                                        Gus Gustafson

                                        0 Offline
                                        0 Offline
                                        0bx
                                        wrote on last edited by
                                        #40

                                        You write websites in Assembler? Wow, just wow... :doh:

                                        Giraffes are not real.

                                        1 Reply Last reply
                                        0
                                        • G gggustafson

                                          One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

                                          Gus Gustafson

                                          B Offline
                                          B Offline
                                          BobJanova
                                          wrote on last edited by
                                          #41

                                          for/while/if/switch come all the way through from C, and Basics, Pascal/Delphi etc all have similar constructs. So you're saying that all C family languages are bad – yet you are just ranting about C#, and apparently you like Win32, a C API (i.e. called in a language that is just as bad). User32 isn't part of .Net (in fact it's part of your beloved Win32!). The one point you kind of have is that a large framework can make it difficult to find things. But it's far easier to find things in .Net or Java than it is in the Win32 API, for example, because they've been organised in a relatively logical way.

                                          G 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups