Thread: Ready for Windows?

  1. #31
    MFC killed my cat! manutd's Avatar
    Join Date
    Sep 2006
    Location
    Boston, Massachusetts
    Posts
    870
    Sure, you'd use all available resource's at work in order to get the job done, but at home or as a hobby I think it's very valuable to learned old but more efficient ways of doing things. Sure they take longer to develop, but in the end the greater understanding of other ways of doing things is a benefit to the coder in the long run. Hence why I learned assembly. There aren't that many practical applications (very low level kernel dev, some device drivers) but it helped me to get a greater understanding of how computers work.
    Some say that you don't need to understand how things work at a base level. I disagree. In the end, one needs to understand the technology behind the magic of compiling a text file into something that runs on a screen that you can interact with. Even if you don't interact with the electricity running through your machine, you owe it to yourself to learn the infinitely complex mechanisms behind the things you see. Without this, all we have in programming is a couple of lines of text and repeating the same thing over and over again. How fun.
    Silence is better than unmeaning words.
    - Pythagoras
    My blog

  2. #32
    pwns nooblars
    Join Date
    Oct 2005
    Location
    Portland, Or
    Posts
    1,094
    I could never wrap my head around how all the gates and switches and such made my application work... And I don't have to, I am a programmer the silicon is the EE guys job to understand and improve. I don't know Win32 aside from the basics to get a window up and going and accept keyboard input so I can put an OpenGL window in it and have fun. I can do a fair amount with wxWidgets and compile it on my Linux box or my Windows box (still want to get a Mac Box, just to play with.)

    Learning some assembly is on my list of stuff to do eventually. I understand the basics of different pieces of code produce more or less instructions, which is all I really need to know as an applications programmer.

    The argument that you get a more intimate knowledge of your system by using a lower level API has ground, but if that were the reason for using an API, then you need to switch to Linux, and play around and really be able to look under the hood to see how the nuts and bolts go together. Overall I find this debate silly, learn what ever API intrests you, same with programming languages, learn what ever you want to, the only time when you need to learn something without wanting to is in classes or for a job.

    Something we should keep in mind is abstraction is part of the point of all these APIs and Languages(which I guess could be considered a form of API ) to keep us away from reinventing the wheel to do the same thing, some of them allow use to abstract to a point where operating system doesn't mater, which is where I would love things to be, be able to use what ever OS I chose to and no be giving up loads of software.

    I seem to have gotten side tracked, oh well, I think my point(s) got out there.

  3. #33
    MFC killed my cat! manutd's Avatar
    Join Date
    Sep 2006
    Location
    Boston, Massachusetts
    Posts
    870
    And of course I realize that it's not needed to understand switches to program. But I think that to be an excellent programmer, it helps to no that with which you are working. And I can't help but be interested in how my C++ code gets translated to assembler, then to an executable which is than executed and is handled by an OS, sending it to the CPU. Eventually my instructions in something I understand turn into a series of electrical signals running through tiny pathways. And if a somewhat outdated API shows me this, then fine. I will use what is expected of me on company time, but after (or before) that, I can (and will) experiment, because for me that is the essense of programming.
    Silence is better than unmeaning words.
    - Pythagoras
    My blog

  4. #34
    Insane Game Developer Nodtveidt's Avatar
    Join Date
    Nov 2006
    Location
    Isabela, PR
    Posts
    105
    It's all personal preference in the end, y'all. Some people choose to focus on product production with the end justifying the means, some people choose to become more balanced programmers at large. Not every end-product programmer has to be a low-level wizard, and not every to-the-metal programmer has to put out commercial-grade applications for general consumption. It's all about what you want to do.
    Code:
    cout << "Language comparisons are dumb";
    echo("Language comparisons are dumb");
    PRINT "Language comparisons are dumb"
    alert ("Language comparisons are dumb")

  5. #35
    Registered User
    Join Date
    Jan 2007
    Posts
    330
    Quote Originally Posted by ChaosEngine
    There's also a third type of programmer. A professional who realises that someone is paying good money for his time and it shouldn't be wasted messing about reinventing the wheel. They want to deliver a high quality product on time and as such they use code and components that are already written, documented and tested in real world apps.
    Thats exactly the first group.

    If you wanna add a third group then it would be the hacker kinda guy who uses all kinds of components to get the job done but who can, *when* needed, create such components himself because he knows the basic building blocks.

  6. #36
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    This whole conversation is becoming ridiculous.

    Separating all programmers in the world in two groups is... just stupid.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  7. #37
    Registered User
    Join Date
    May 2006
    Posts
    630
    KIBO, I really like your definition somehow.

  8. #38
    Registered User
    Join Date
    Jan 2007
    Posts
    330
    Quote Originally Posted by Mario F.
    This whole conversation is becoming ridiculous.

    Separating all programmers in the world in two groups is... just stupid.
    no, if you look at other aspects of programming theres of course endless groups!
    Considering the discussion about a low level graphical windowing system API, dividing programmers in these groups is useful. If it was a discussion about designing software you could look at programmers as some who wanna design and plan everything they can and some who just start coding. But thats not really handy now in this thread is it.

    Of course there's still the gay and hetero groups!

  9. #39
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    The problem with the whole reasoning is that every programmer is the "hacker type"... But hey! Let's have fan creating tags. Life is not more entertaining this way, but at least we can pretend we understand about it.

    There's also another problem with the whole reasoning... and that is simply the fact no one really knows the windows API. Well, let me say almost no one in case you can come up with some round out geek. It's a thing you consult. You use when you need to, not because you like saying to your friends "look how cool I am. I program with the API. I'm an hacker, and you that don't use the API as much as I do, are not."

    Of course, the fact your friends program in assembler is totally irrelevant.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  10. #40
    Registered User
    Join Date
    May 2006
    Posts
    630
    Is wxWidgets meant only for GUIs?

    When you use word 'API'.. Do you mean native windows functions or something else?

  11. #41
    MFC killed my cat! manutd's Avatar
    Join Date
    Sep 2006
    Location
    Boston, Massachusetts
    Posts
    870
    Quote Originally Posted by l2u
    Is wxWidgets meant only for GUIs?
    No, it has networking features, file handling, and more. Check their website for more.
    Quote Originally Posted by l2u
    When you use word 'API'.. Do you mean native windows functions or something else?
    No, API means Application programming interface. Wikipedia it.
    Silence is better than unmeaning words.
    - Pythagoras
    My blog

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. continuing program until ready to stop
    By jlmac2001 in forum C++ Programming
    Replies: 2
    Last Post: 01-19-2003, 07:19 PM
  2. Am i ready for openGL???
    By tetra in forum Game Programming
    Replies: 9
    Last Post: 01-14-2003, 05:19 AM
  3. trim string function (code)
    By ipe in forum C Programming
    Replies: 9
    Last Post: 01-06-2003, 12:28 AM
  4. Is Linux ready to enter the desktop market?
    By carrja99 in forum Tech Board
    Replies: 20
    Last Post: 11-04-2002, 01:11 AM
  5. Am I ready????
    By aresashura in forum Game Programming
    Replies: 12
    Last Post: 12-20-2001, 11:08 PM