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. Stuff that every programmer should know but isn't necessarily in the school books

Stuff that every programmer should know but isn't necessarily in the school books

Scheduled Pinned Locked Moved The Lounge
collaborationtoolshelpquestionlearning
65 Posts 29 Posters 0 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.
  • E Ennis Ray Lynch Jr

    What does computer science and windows short-cuts have in common? I think that material is better left to an introduction to computers or business software lay course. If I walked into a C.S. course and the first day the prof. went over such things I would drop the course or switch professors. (Or go to the Department Head and yell).

    Need custom software developed? I do C# development and consulting all over the United States. A man said to the universe: "Sir I exist!" "However," replied the universe, "The fact has not created in me A sense of obligation." --Stephen Crane

    D Offline
    D Offline
    dabs
    wrote on last edited by
    #34

    Don't worry, there will be lots and lots of stuff about computer science. I was thinking about maybe one 45 minute lecture/hands-on session about this stuff, and mostly because when students talk about the stuff that they remember the most from lectures, it is often some of those small things. What I've learned from 10 years of teaching is that the lectures cannot be too boring, the attention of students will quickly go elsewhere if they get bored. Talking about stuff that isn't theory but helps them in practice will help in keeping their attention.


    Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

    E 1 Reply Last reply
    0
    • S Simon P Stevens

      I totally agree with Ennis on this. Forget all this intro rubbish. If you've got a bunch of undergrads on a computer science course who don't know basic windows short cuts then they might as well leave immediately. Give them a proper intro to programming, show them some code, get them writing code. Don't teach them how to use computers. If they are ever going to be even semi decent programmers they should be able to figure things like that out for themselves. By all means, if you feel like it, giving them a printed sheet of "tips" then go for it, but don't patronize them by wasting their time with this stuff. Our first day at uni included an intro to "the labs". It was handled perfectly, there was one 3rd year for every ~10 newbies, They handed out printed sheets of common unix commands, and the basic tools you would need, a Java tutorial, and a guide to the various file shares. You could tell within about 5 minutes who was going to make it through the course and who wasn't. The best had emacs/vi up and some simple code running almost immediately. The worst were still trying to figure out what the ls command did. Even having never touched unix before (and very little Java), I was very quickly compiling code. Lesson 2 went straight into full on Java. You could figure out the commands and short cuts in your spare time.

      Simon

      D Offline
      D Offline
      dabs
      wrote on last edited by
      #35

      Totally disagree. When I started learning computer science, I was a newbie myself. If students should be thrown out based on how they perform the first days I would have been thrown out. But here I am, quite a decent programmer (if I may say so myself), and an excellent teacher (you can ask my students!). People reeeealllyyy should learn to be more patient with those that don't succeed immediately.


      Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

      M D 2 Replies Last reply
      0
      • D dabs

        :-) But surely this should be taught in kindergarden school!


        Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

        C Offline
        C Offline
        CPallini
        wrote on last edited by
        #36

        At MFC/C++ forum you may find plenty of 'Senior Developers' unaware of such points. :)

        If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
        This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
        [My articles]

        D 1 Reply Last reply
        0
        • D dabs

          Hi all, I will be teaching an introductory course for students studying computer science this fall, and I was thinking that it might be a good idea to spend a little time teaching them about all kinds of stuff that they will probably not read in their books, but are nonetheless useful (and sometimes useless) information for all programmers. Stuff like: - shortcuts, both obvious and not-so-obvious (such as Windows+E to start Windows Explorer, Ctrl+PageUp to switch between tabs in Excel/Chrome etc.) - command line commands, maybe the 10 most commonly used (both on Windows and Unix) - tools they should know exist, both tools that are already installed on their computers (Task Manager, Event Viewer etc.) and others they can download (WinRar, Firebug etc.) - tricks that might come in handy at times (you can use Ctrl+C to copy error messages to the clipboard when a messagebox appears, instead of rebooting when you install Subversion you can just kill Explorer etc.) What would you add to this list? Regards, Daniel


          Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

          B Offline
          B Offline
          Brady Kelly
          wrote on last edited by
          #37

          Basic debugging, i.e. breakpoints and stepping.

          1 Reply Last reply
          0
          • D dabs

            Hi all, I will be teaching an introductory course for students studying computer science this fall, and I was thinking that it might be a good idea to spend a little time teaching them about all kinds of stuff that they will probably not read in their books, but are nonetheless useful (and sometimes useless) information for all programmers. Stuff like: - shortcuts, both obvious and not-so-obvious (such as Windows+E to start Windows Explorer, Ctrl+PageUp to switch between tabs in Excel/Chrome etc.) - command line commands, maybe the 10 most commonly used (both on Windows and Unix) - tools they should know exist, both tools that are already installed on their computers (Task Manager, Event Viewer etc.) and others they can download (WinRar, Firebug etc.) - tricks that might come in handy at times (you can use Ctrl+C to copy error messages to the clipboard when a messagebox appears, instead of rebooting when you install Subversion you can just kill Explorer etc.) What would you add to this list? Regards, Daniel


            Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

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

            dabs wrote:

            What would you add to this list?

            Most of the time it's quicker to do some research on your own, rather than posting questions demanding solutions to problems or asking questions that could be answered with a quick Bing.

            "WPF has many lovers. It's a veritable porn star!" - Josh Smith

            As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.

            My blog | My articles | MoXAML PowerToys | Onyx

            1 Reply Last reply
            0
            • R Rajesh R Subramanian

              Concept: Virtualization (What it is, with a demo). More shortcuts: Alt+Space+N, Alt+Space+C, Alt+Space+X, WinKey+M, WinKey+D (this is different from WinKey+M, this will "show" the desktop and pressing it again will toggle the windows to previous state, whereas WinKey+M will minimize everything) and there are plenty other I use every day. And when a non-technical person happens to see it, usually it is "shocking" for them. :) Most people know Alt+Tab, but there's also Alt+Shift+Tab and WinKey+Tab. There's also Ctrl+RightArrow (and Ctrl+other directional arrow keys), Ctrl+Home, Ctrl+End, Ctrl+A, ... How to use osalt[^] to find an application that is open source, free and that "just works". How to keep the computer safe (hosts file to begin with?), how can SysInternals suite[^] help in development, etc., NOT using the download manager that comes with IE (oh wait, IE does not have one :rolleyes: ), especially while doing reasonable large downloads. There's a thing called FDM[^], which is free, open source and works like a charm.

              It is a crappy thing, but it's life -^ Carlo Pallini

              B Offline
              B Offline
              Brady Kelly
              wrote on last edited by
              #39

              Rajesh R Subramanian wrote:

              how can SysInternals suite[^] help in development, etc.,

              :thumbsup:

              1 Reply Last reply
              0
              • D Dario Solera

                benjymous wrote:

                using prints and messageboxes isn't the best way

                Really?! How do you debug your code then?

                If you truly believe you need to pick a mobile phone that "says something" about your personality, don't bother. You don't have a personality. A mental illness, maybe - but not a personality. - Charlie Brooker My Photos/CP Flickr Group - ScrewTurn Wiki

                B Offline
                B Offline
                BadKarma
                wrote on last edited by
                #40

                Dario Solera wrote:

                Really?! How do you debug your code then?

                With MessageBeep of course.

                Learn from the mistakes of others, you may not live long enough to make them all yourself.

                D R 2 Replies Last reply
                0
                • B benjymous

                  How to use a debugger - it's amazing how many new grads have never debugged anything before, and seem amazed when you tell them that using prints and messageboxes isn't the best way

                  Help me! I'm turning into a grapefruit! Buzzwords!

                  C Offline
                  C Offline
                  CPallini
                  wrote on last edited by
                  #41

                  benjymous wrote:

                  using prints and messageboxes isn't the best way

                  I agree: for instance I use the PC Buzzer. :-D

                  If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
                  This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
                  [My articles]

                  1 Reply Last reply
                  0
                  • J jeffwask

                    Would you tear the shell off a Turtle? Poor little turtle... How do you think Windows feels when you rip it's shell right out from under it? Not really a great idea just to save a minute on a reboot...go get a coffee.

                    B Offline
                    B Offline
                    Brady Kelly
                    wrote on last edited by
                    #42

                    In Weven (and Vista before it), killing Explorer is handled quite gracefully. I have just killed all instances of explorer.exe, and will still be able to post this and continue browsing.

                    1 Reply Last reply
                    0
                    • Y Yusuf

                      I second Ennis's post. You are there to teach programming not intro to computers. By all means gather all the material and create a course website. On the first day of the class, tell them about your *extra* course material and *freebies* and let them dig it out from your website. No need to print any paper. I took several classes with a particular professor. I like her because she digs out a lot of relevant material about the course and posts links in the her "course website". Then in the beginning of the class, she reminds the students with a single statement about the material in the website never to mention it again. The best part sometimes when someone asks her she points them to her website. :thumbsup::thumbsup:

                      Yusuf May I help you?

                      D Offline
                      D Offline
                      dabs
                      wrote on last edited by
                      #43

                      Don't worry, there is a course website, all material is there, there is no book on paper the students must buy, all reading material is on the website, and I have lots of additional material. We strongly discourage students from printing anything if they can avoid it at all. I've been doing this for the last 10 years actually. But this is the first time I've been given the chance to be the one that teaches the very first course the students attend, I've mostly been teaching students in their second and third semesters. I'm a bit surprised about how people have reacted to my post, I didn't realize it was so inaccurate. Obviously this stuff will not be the whole course, the course is focused on the basics of computer science.


                      Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                      1 Reply Last reply
                      0
                      • R Rajesh R Subramanian

                        Concept: Virtualization (What it is, with a demo). More shortcuts: Alt+Space+N, Alt+Space+C, Alt+Space+X, WinKey+M, WinKey+D (this is different from WinKey+M, this will "show" the desktop and pressing it again will toggle the windows to previous state, whereas WinKey+M will minimize everything) and there are plenty other I use every day. And when a non-technical person happens to see it, usually it is "shocking" for them. :) Most people know Alt+Tab, but there's also Alt+Shift+Tab and WinKey+Tab. There's also Ctrl+RightArrow (and Ctrl+other directional arrow keys), Ctrl+Home, Ctrl+End, Ctrl+A, ... How to use osalt[^] to find an application that is open source, free and that "just works". How to keep the computer safe (hosts file to begin with?), how can SysInternals suite[^] help in development, etc., NOT using the download manager that comes with IE (oh wait, IE does not have one :rolleyes: ), especially while doing reasonable large downloads. There's a thing called FDM[^], which is free, open source and works like a charm.

                        It is a crappy thing, but it's life -^ Carlo Pallini

                        D Offline
                        D Offline
                        dabs
                        wrote on last edited by
                        #44

                        Thanks, excellent comments.


                        Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                        1 Reply Last reply
                        0
                        • J jeffwask

                          Would you tear the shell off a Turtle? Poor little turtle... How do you think Windows feels when you rip it's shell right out from under it? Not really a great idea just to save a minute on a reboot...go get a coffee.

                          D Offline
                          D Offline
                          dabs
                          wrote on last edited by
                          #45

                          Oh yes I would :-) I really hate restarting when I don't absolutely have to.


                          Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                          1 Reply Last reply
                          0
                          • D Dario Solera

                            dabs wrote:

                            instead of rebooting when you install Subversion you can just kill Explorer

                            :omg: :omg: No no no. It screws most applications that have an icon in the tray area.

                            If you truly believe you need to pick a mobile phone that "says something" about your personality, don't bother. You don't have a personality. A mental illness, maybe - but not a personality. - Charlie Brooker My Photos/CP Flickr Group - ScrewTurn Wiki

                            D Offline
                            D Offline
                            dabs
                            wrote on last edited by
                            #46

                            Could not care less. Might as well get rid of them all.


                            Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                            1 Reply Last reply
                            0
                            • R realJSOP

                              I think you can assume a certain level of computer skills if someone is in a CS class.

                              "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
                              -----
                              "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

                              D Offline
                              D Offline
                              dabs
                              wrote on last edited by
                              #47

                              No you don't. Believe me, 10 years of experience should tell :-) Those that have very little experience will obviously have much more work ahead of them, but they should by no means be written off. Some of those that were not very promising at the beginning have turned out quite well.


                              Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                              1 Reply Last reply
                              0
                              • M Maximilien

                                If I was going to a school and they were teaching that, I'd ask for a refund. Don't get me wrong, some nice "benign hacks/tips/tricks" are fun to learn, but do not make that a "chapter" in your curriculum. Anyway, don't forget to tech them to use the "shut down" button of their computer and learn to live.

                                This signature was proudly tested on animals.

                                D Offline
                                D Offline
                                dabs
                                wrote on last edited by
                                #48

                                Don't worry, this will only be about one lecture out of a whole course. The course will focus on real computer science stuff. But the point about learning how to use the "shut down" button is really good :-)


                                Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                                1 Reply Last reply
                                0
                                • D dabs

                                  Totally disagree. When I started learning computer science, I was a newbie myself. If students should be thrown out based on how they perform the first days I would have been thrown out. But here I am, quite a decent programmer (if I may say so myself), and an excellent teacher (you can ask my students!). People reeeealllyyy should learn to be more patient with those that don't succeed immediately.


                                  Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                                  M Offline
                                  M Offline
                                  Member 96
                                  wrote on last edited by
                                  #49

                                  Sorry but no, there are far too many cs students being cranked out these days with a) no critical thinking skills, b) no real desire to become a true professional programmer. I wholeheartedly agree with the others, any cs student that doesn't show a keen interest to figure things out on their own within the first couple of days is someone who should be gently guided away to whatever marketing or business courses are on offer. My very first educational institution experience with computers was in high school and I was programming on paper with a pencil for about 6 months before that knowing I'd get a chance to use my first real computer and wanted to be ready for it. I was *that* motivated. These days most cs students simply want to make money, it's a default choice, they don't actually have an inner desire to learn it for it's own sake, then they clog up the job market and happily acquiesce to all manner of systems designed to ensure programmers are a commodity, nothing more than a big cog in a machine easily replaced which brings down the quality of all the work and the work environment for the rest of us who actually like doing this stuff. Anything that can be done to weed out the people who need their hands held or are just in it for the money is a good thing, you are doing a disservice to your fellow programmers here and everywhere if you do anything less.


                                  "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

                                  1 Reply Last reply
                                  0
                                  • L Lost User

                                    * Unit-testing (NUint, TestDriven.NET) * Using a profiler * Virtual Machines / Remote connections / Remote debugging * Some basic patterns The book "Don't make me think" should also be included :)

                                    I are troll :)

                                    D Offline
                                    D Offline
                                    dabs
                                    wrote on last edited by
                                    #50

                                    These should certainly be covered, although (at least some of them) they might be better suited when the students have gained some experience. Thanks for the suggestions though.


                                    Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                                    1 Reply Last reply
                                    0
                                    • B benjymous

                                      How to use a debugger - it's amazing how many new grads have never debugged anything before, and seem amazed when you tell them that using prints and messageboxes isn't the best way

                                      Help me! I'm turning into a grapefruit! Buzzwords!

                                      D Offline
                                      D Offline
                                      dabs
                                      wrote on last edited by
                                      #51

                                      Check - this will be covered.


                                      Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                                      1 Reply Last reply
                                      0
                                      • D Dario Solera

                                        Maybe you could try to "integrate" those notions along the way, without teaching them explicitly.

                                        If you truly believe you need to pick a mobile phone that "says something" about your personality, don't bother. You don't have a personality. A mental illness, maybe - but not a personality. - Charlie Brooker My Photos/CP Flickr Group - ScrewTurn Wiki

                                        D Offline
                                        D Offline
                                        dabs
                                        wrote on last edited by
                                        #52

                                        Yes, as I said in another post, it would be an excellent way to keep students awake :-)


                                        Wenn ist das Nunstück git und Slotermeyer? Ja! Beierhund das oder die Flipperwaldt gersput!

                                        1 Reply Last reply
                                        0
                                        • C Cedric Moonen

                                          And the software industry will collapse because of horrible code quality :)

                                          Cédric Moonen Software developer
                                          Charting control [v2.0] OpenGL game tutorial in C++

                                          M Offline
                                          M Offline
                                          Member 96
                                          wrote on last edited by
                                          #53

                                          :rolleyes: Yeah right, keep on believing that. That belief is one of the many reasons why there will be no real U.S. programming market in the years to come.


                                          "Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg

                                          J 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