background preloader

How to be a Programmer: A Short, Comprehensive, and Personal Summary

How to be a Programmer: A Short, Comprehensive, and Personal Summary
Debugging is the cornerstone of being a programmer. The first meaning of the verb to debug is to remove errors, but the meaning that really matters is to see into the execution of a program by examining it. A programmer that cannot debug effectively is blind. Idealists that think design, or analysis, or complexity theory, or whatnot, are more fundamental are not working programmers. The working programmer does not live in an ideal world. Even if you are perfect, your are surrounded by and must interact with code written by major software companies, organizations like GNU, and your colleagues. Debugging is about the running of programs, not programs themselves. To get visibility into the execution of a program you must be able to execute the code and observe something about it. The common ways of looking into the ‘innards’ of an executing program can be categorized as: Some beginners fear debugging when it requires modifying code. How to Debug by Splitting the Problem Space

Related:  Informationalpassion projectProgramming stuff

How To Become A Hacker Copyright © 2001 Eric S. Raymond As editor of the Jargon File and author of a few other well-known documents of similar nature, I often get email requests from enthusiastic network newbies asking (in effect) "how can I learn to be a wizardly hacker?". Back in 1996 I noticed that there didn't seem to be any other FAQs or web documents that addressed this vital question, so I started this one. A lot of hackers now consider it definitive, and I suppose that means it is. Still, I don't claim to be the exclusive authority on this topic; if you don't like what you read here, write your own.

Computer Basics: Understanding Operating Systems What is an operating system? Watch the video (2:13). An operating system is the most important software that runs on a computer. It manages the computer's memory, processes, and all of its software and hardware. How to be a good programmer...My tips (Sandip Dev's blog) This article has been cross posted from my personal blog : At the very onset, let me make it clear that I DO NOT consider myself a good programmer. I rate my coding skills as average and I am still learning and have a long way to go before I am even slightly pleased with my programming skills. Yes I am better than quite a few people when it comes to programming, but thats merely because they are lazy and like to sit on idly all day and never bother about programming. Their horrible skills make my less horrible skills look marvellous. I have performed abysmally in ICPC and have never done well in any coding contest worth mentioning (I DO NOT consider college level contests worth mentioning).

20 Places to Find Free Books Online The following is a guest post by Bailey Harris. There are many different sites offer free books online. Within minutes, you could find enough reading material in the form of e-books and audio books to keep you and your family entertained for months, if not years. The following sites provide free books that can be enjoyed online, downloaded to your computer, or transferred to an e-reader or MP3 player. E-books Google Books – Google Books is a great place to find free classic books in the public domain. New Programming Jargon Every field comes up with its own jargon, and oftentimes subgroups within a field come up with their own specific words or phrases (those of you familiar with Microsoft Canada’s Developer and Platform Evangelism Team know that we have our own term for “broken”, named after one of our teammates who is notorious for killing all sorts of tech gear). A question recently posted on Stack Overflow asked for people to submit programming terms that they or their team have coined and have come into regular use in their own circles. I took a number of the submissions and compiled them into the alphabetically ordered list below for your education and entertainment. Have you come up with your own jargon? Tell us in the comments!

Information Security Policies and Procedures Part 3 This is part of an ongoing series on documentation development. Please be sure to read the previous posts in this series: Part 1 Part 2 While we are still at the beginning stages of preparing to develop policies, procedures, and related documentation, it is important to mention a few things not to do: Do Not Repurpose/Borrow the Work of Others Search engines are great, and place a vast body of human knowledge at your fingertips. This vast knowledge often includes the intellectual property of others.

History of Linux, Who Invented Linux, How Was Linux Invented Who invented Linux? Linux is the first truly free Unix-like operating system. The underlying GNU Project was launched in 1983 by Richard Stallman originally to develop a Unix-compatible operating system called GNU, intended to be entirely free software. Many programs and utilities were contributed by developers around the world, and by 1991 most of the components of the system were ready. Still missing was the kernel. 10 steps to becoming a better programmer Hi and welcome back to my blog! I wanted to cover 10 of the things I’ve learned over the years being a professional programmer that really helped me improve the quality of my code and my overall productivity. 1. Never ever duplicate code Avoid duplicating code at all costs. If you have a common code segment used in a few different places, refactor it out into its own function.

45 Free Online Computer Science Courses Missed lectures or hate teachers? Or want to study computer science courses without going to university? … You can study anytime anywhere because there are number of free online computer science courses available on internet that are very interactive. Here is the list of 45 free online computer science courses that are designed by teaching experts from best universities of the world (almost the whole graduation!).

Data Visualization for Non-Programmers: Impure Impure is a new programming language designed to give non-programmers access to professional tools for data visualization. Users can use it to process and display data from social media feeds, financial information and more. Unlike Processing, a simple programming language for data visualization and art, Impure is a completely visual language - there's no need to learn any code. The programming language is also completely web hosted - there is no development environment to install. It's sort of like Yahoo! Pipes but for visualization. Information Security Policies and Procedures Part 4 This is part of an ongoing series on documentation development. Please be sure to read the previous posts in this series: Part 1 Part 2 Part 3 The formatting and structure of documentation may not seem like the most enthralling topic, and in many (most) ways it is not. It is however one of the most important elements of effective documentation. Delivering information in a clear and consistent way is essential to ensure documents are easy to use and effective.

The history of Linux: how time has shaped the penguin As we sit in front of the latest version of Ubuntu, Fedora or SUSE, revelling in the glorious animated desktops, taking pleasure in the ease-of-use the GUI grants and enjoying the fact that most of our hardware works out of the box, do we ever wonder how on Earth our favourite operating system got to this point? Do we consider and appreciate the amount of time and effort that a long list of developers have taken in reaching this Zen-like state of man and OS? Most likely, not.

How to read XML file in Java – (DOM Parser) In this tutorial, we will show you how to read an XML file via DOM XML parser. DOM parser parses the entire XML document and loads it into memory; then models it in a “TREE” structure for easy traversal or manipulation. In short, it turns a XML file into DOM or Tree structure, and you have to traverse a node by node to get what you want. Top 10 Universities With Free Courses Online #1 UC Berkeley Ranked as the #1 public school in the United States, Berkeley offers podcasts and webcasts of amazing professors lecturing. Each course has an RSS feed so you can track each new lecture.

Interesting information that can be used for projects later. by philipottinger Mar 12

Related:  Computer ProgramingComputer ScienceDIYProgrammingi'm not this clever yet (to play with later)tutorialsProgramingComputerComputadoraMy first pearl treevarious stuff 23To be learnedlamarhay