-
Software Development Cycle
- Programmer produces code he believes is bug-free.
- Product is tested. 20 bugs are found.
- Programmer fixes 10 of the bugs and explains to the testing department that the other 10 aren’t really bugs.
- Testing department finds that five of the fixes didn’t work and discovers 15 new bugs.
- Repeat steps 3 and 4.
- Due to marketing pressure and an extremely premature product announcement based on overly-optimistic programming schedule, the product is released.
- Users find 137 new bugs.
- Original programmer, having cashed his royalty check, is nowhere to be found.
- Newly-assembled programming team fixes almost all of the 137 bugs, but introduce 456 new ones.
- Original programmer sends underpaid testing department a postcard from Fiji. Entire testing department quits.
- Company is bought in a hostile takeover by competitor using profits from their latest release, which had 783 bugs.
- New CEO is brought in board of directors. He hires programmer to redo program from scratch.
- Programmer produces code he believes is bug-free…
Posted on March 24, 2012 via IT Problems with 82 notes
Source: theitproblems
-
alcohol poisoning anybody?
Posted on January 1, 2012 via Everybody hates Chris with 246 notes
Source: x16
-
Intro to Programming Languages: Books for Java, C, C++, Python, and Perl
Recently we at FYCSP had an ask about AP Computer Science and if there were any books which could be used to learn Java. So, as a series/menial task which I feel many of our followers here at FYCSP will enjoy, I have collected and uploaded various intro-level books.
Introductory level books for Java, C, C++, Python(2.X and 3), and Perl. All books are those used in intro level classes at universities or widely used, highly recommended books.
All books except for Cozens’s Beginning Perl are hosted on open-to-the-web Google Docs (unfortunately K.N. King’s C Programming: A Modern Approach and Deitel and Deitel’s C++: How to Program are too large and lack previews (you can still download them though))
Java:

A Guide to Programming in Java (Beth Brown)
This is the book that I used in AP CompSci last year. It’s a great introduction into Java and it covers most of the skills you would need to study for the AP CS exam (although it does lack the case studies such as GridWorld, but you can get those on the CollegeBoard APCS site).
C:

C Programming: A Modern Approach (K.N. King) (No preview, must download PDF)
A textbook used at over 200 colleges, this book and the K&R book below have formed the alpha and omega of C textbooks for the past 10 years. Definitely a good book for both beginners and intermediate level coders.

The C Programming Language (Brian Kernighan and Dennis Ritchie)
Known as the K&R book in many circles, The C Programming Language was written by Both Brian W. Kernighan and Dennis Ritchie, the developers of C. This book has been the bible of C for over 20 years and is not only good for beginners, but it also teaches a great deal of how to be a good programmer.
C++:

C++ Primer Plus, fifth edition (Stephen Prata)
C++ Primer Plus (ironically not C++ Primer) has set itself over the last 20 years as the book to learn C++ from. It’s easy to learn from as Prata laces the book with great explanations and humor and if you are new to C++, this is definitely the book for you.

C++: How to Program (Harvey Deitel & Paul Deitel) (No preview, must download PDF)
A much more complete introduction to C++ than C++ Primer Plus, you go from the basics all the way into C++. C++: How to Program, though, is definitely for you if you don’t have prior experience for coding, as the book is definitely aimed at teaching to someone with no experience, unlike most of the earlier C++ books which aim to convert C knowledge into C++ coding.
Python:
Python 2.X:

A Byte of Python for Python 2.X (Swaroop C H)
Python 3:

A Byte of Python (Swaroop C H)
A Byte of Python is an introduction level book to Python. As a whole it teaches to the level who does not know how to program, but with it, you should be able to grasp the fundamentals of Python, enough to start experimenting and move onto more difficult matters.
Perl:

Simon Cozens’s Beginning Perl is a great book for beginners because most Perl manuals out there go from basic to difficult techniques in a matter of pages, but Cozens seems to be able to pace the learning experience just right. It falls short in various areas, but for a beginner, Beginning Perl is definitely the book to start with.

Picking Up Perl (Bradley M. Kuhn)
Possibly one of the most widely distributed textbooks of Perl on the internet, it’s hard to go bad with both Picking Up Perl and Cozens’s Beginning Perl to augment each other.
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “”Exercise?”” Bottom text: “Typing and pulling out your hair in frustration is exercise, right?”]
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Forget to bring laptop to DB class” Bottom text: “Submit error-free SQL-99 query on paper”]
Mod note: I hate rocking pen and paper. I’m so used to a keyboard my handwriting is all over the place.
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Finish 3 hours of math homework” Bottom text: “Can’t figure out 3+5”]
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Forget syntax of Unix cp command” Bottom text: “Overwrite source code with object code”]
Actually happened to me once in a CS class. And of course I hadn’t made a backup.
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “ALL GOOD FUNCTIONS” Bottom text: “MUST COME TO AN END”]
Mod’s Note: Harry Potter reference FTW.
-
[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “free[pic]; pic.display[elephant];” Bottom text: “Dangling pointers pwn”]
I’m sure the penguin was initialized by the BIOS.

![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “”Exercise?”” Bottom text: “Typing and pulling out your hair in frustration is exercise, right?”]](http://24.media.tumblr.com/tumblr_lt97cfHXoW1qhjhdto1_500.jpg)
![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Forget to bring laptop to DB class” Bottom text: “Submit error-free SQL-99 query on paper”]
Mod note: I hate rocking pen and paper. I’m so used to a keyboard my handwriting is all over the place.](http://25.media.tumblr.com/tumblr_lqqgv7DUR01qhjhdto1_500.jpg)
![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Finish 3 hours of math homework” Bottom text: “Can’t figure out 3+5”]](http://24.media.tumblr.com/tumblr_lqc4q4MxD91qhjhdto1_500.jpg)
![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “Forget syntax of Unix cp command” Bottom text: “Overwrite source code with object code”]
Actually happened to me once in a CS class. And of course I hadn’t made a backup.](http://24.media.tumblr.com/tumblr_lpzktscg0I1qhjhdto1_500.jpg)
![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “ALL GOOD FUNCTIONS” Bottom text: “MUST COME TO AN END”]
Mod’s Note: Harry Potter reference FTW.](http://25.media.tumblr.com/tumblr_loflhlY4071qhjhdto1_500.jpg)
![[Picture: Background: 6 piece pie style colour split with images of a c++ editor, a terminal installing python, and the blue Microsoft error screen alternating. Foreground: a photo of the penguin which represents Linux. Top text: “free[pic]; pic.display[elephant];” Bottom text: “Dangling pointers pwn”]
I’m sure the penguin was initialized by the BIOS.](http://24.media.tumblr.com/tumblr_lniue226wv1qhjhdto1_500.jpg)