background preloader

The 5 types of programmers « Steven Benner's Blog

The 5 types of programmers « Steven Benner's Blog
In my code journeys and programming adventures I’ve encountered many strange foes, and even stranger allies. I’ve identified at least five different kinds of code warriors, some make for wonderful comrades in arms, while others seem to foil my every plan. However they all have their place in the pantheon of software development. Without a healthy mix of these different programming styles you’ll probably find your projects either take too long to complete, are not stable enough or are too perfect for humans to look upon. The duct tape programmer The code may not be pretty, but damnit, it works! This guy is the foundation of your company. The OCD perfectionist programmer You want to do what to my code? This guy doesn’t care about your deadlines or budgets, those are insignificant when compared to the art form that is programming. The anti-programming programmer I’m a programmer, damnit. His world has one simple truth; writing code is bad. The half-assed programmer What do you want?

350+ Free Textures - Web Design Blog – DesignM.ag 17 scratched and scraped textures grab bag 40 random free textures 14 free high res slate textures Aqueous Sun Texture Pack Volume 1 (50) Aqueous Sun Texture Pack Volume 2 (50) Aqueous Sun Presents Rust v.01 (28) Beautiful Textures On Black Backgrounds (22) rust textures (5) victorian dreams texture pack (10) Dreamy Bokeh Textures (4) Glitter Bokeh Texture Pack (33) 20 grungy dirty wood textures tree bark 10 free high res textures 9 colorful rust textures Wood Panels Texture Set (9) turn back time texture pack (5) Vintage II Texture Pack (6) Rust ‘n Such Textures (10) textures (5) Folds: Texture Pack (8) Freebie: Texture Pack 4 – Watercolours (10) Metal Texture Pack – 47 Free Images Brick & Stone: Texture Pack (24) 17 rock and concrete textures 25 subtle and light grunge textures 8 re-stained paper textures 28 High-Res Vintage Postal Textures Old Leather Textures (5) 5 colored grungy bokeh textures 15 High-Res Lens Flare Textures 27 High-Res Fabric Fold Textures out of focus 30 free bokeh textures Bokeh Pack (22)

Become a Programmer, Motherfucker If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books: Learn Python The Hard Way Learn Ruby The Hard Way Learn Code The Hard Way I'm also working on a whole series of programming education books at learncodethehardway.org. Learn C The Hard Way Learn SQL The Hard Way Graphics Programming Language Agnostic NerdDinner Walkthrough Assembly Language Bash Clojure Clojure Programming ColdFusion CFML In 100 Minutes Delphi / Pascal Django Djangobook.com Erlang Learn You Some Erlang For Great Good Flex Getting started with Adobe Flex (PDF) Forth Git Grails Getting Start with Grails Haskell Java JavaScript JavaScript (Node.js specific) Latex The Not So Short Introduction to LATEX (perfect for beginners) Linux Advanced Linux Programming Lisp Lua Programming In Lua (for v5 but still largely relevant)Lua Programming Gems (not entirely free, but has a lot of free chapters and accompanying code) Maven Mercurial Nemerle Nemerle NoSQL Oberon Objective-C

Thanksgiving as a kid VS Thanksgiving as an adult - The Oatmeal - StumbleUpon All artwork and content on this site is Copyright © 2014 Matthew Inman. Please don't steal. TheOatmeal.com was lovingly built using CakePHP All artwork and content on this site is Copyright © 2014 Matthew Inman. Please don't steal. TheOatmeal.com was lovingly built using CakePHP Best Programming Quotations A good programmer is someone who looks both ways before crossing a one-way street. -- Doug Linder, systems administrator A most important, but also most elusive, aspect of any tool is its influence on the habits of those who train themselves in its use. If the tool is a programming language this influence is, whether we like it or not, an influence on our thinking habits. -- Edsger Dijkstra, computer scientist Being abstract is something profoundly different from being vague... The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise. -- Edsger Dijkstra Besides a mathematical inclination, an exceptionally good mastery of one's native tongue is the most vital asset of a competent programmer. -- Edsger Dijkstra C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg. -- Bjarne Stroustrup, developer of the C++ programming language Good code is its own best documentation.

Pointer Basics This document introduces the basics of pointers as they work in several computer languages -- C, C++, Java, and Pascal. This document is the companion document for the Pointer Fun with Binky digital video, or it may be used by itself. This is document 106 in the Stanford CS Education Library. This and other free materials are available at cslibrary.stanford.edu. Section 1 -- Pointer Rules One of the nice things about pointers is that the rules which govern how they work are pretty simple. 1) Pointers and Pointees A pointer stores a reference to something. The above drawing shows a pointer named x pointing to a pointee which is storing the value 42. Allocating a pointer and allocating a pointee for it to point to are two separate steps. 2) Dereferencing The dereference operation starts at the pointer and follows its arrow over to access its pointee. 3) Pointer Assignment Below are versions of this example in C, Java, C++, and Pascal. Section 3 -- Study Questions Question 1 Question 2 Question 3

The Meaning of Life by Cliff Pickover The differences between men and women. This is my lastest book: The Book of Black: Black Holes, Black Death, Black Forest Cake, and Other Dark Sides of Life Easily read my latest tweets, for free, here. Return to Pickover's main web page.

15 sites web developers and designers should know - CatsWhoCode.com Creating a good website isn't an easy task, but there's a few tools that can definitely make your developer or designer life easier. In this article, I have compiled 15 extremely useful website that any web developer or web designer should have bookmarked. ColorCombos When designing a website, one of the firsts (and most important) steps of the process is to choose a color scheme. Color Combos allow you to browse thousand of different colors combinations for getting inspired for your upcomming design. LIpsum Who doesn’t know the extremely popular Lorem Ipsum text? What the font? You just saw a logo or website using a particular font and you enjoyed it. ConvertIcon Favicons are a must have for any website, mostly because on modern browsers as such as Firefox, it is displayed along with the site name in tabs. BgPatterns background Patterns is definitely one of the current webdesign trends. HTML Encoder Do you display code on your website? Test Everything Sprite Generator Load Impact IconFinder

Mastering recursive programming For new computer science students, the concept of recursive programming is often difficult. Recursive thinking is difficult because it almost seems like circular reasoning. It's also not an intuitive process; when we give instructions to other people, we rarely direct them recursively. For those of you who are new to computer programming, here's a simple definition of recursion: Recursion occurs when a function calls itself directly or indirectly. A classic example of recursion The classic example of recursive programming involves computing factorials. An interesting property of a factorial is that the factorial of a number is equal to the starting number multiplied by the factorial of the number immediately below it. Listing 1. int factorial(int n) { return n * factorial(n - 1); } The problem with this function, however, is that it would run forever because there is no place where it stops. Listing 2. int factorial(int n) { if(n == 1) { return 1; } else { return n * factorial(n - 1); } }

Application for a night out - hisnhers Funny Shit Funny Shit (home) → genderwar → Application for a night out - his'n'hers Application for a night out - his'n'hers → Check out more Funny Shit More: The Gender War Teefury make awesome shirts, you should check them out! Copyright/Disclaimer/Privacy Holding a Program in One's Head August 2007 A good programmer working intensively on his own code can hold it in his mind the way a mathematician holds a problem he's working on. Mathematicians don't answer questions by working them out on paper the way schoolchildren are taught to. They do more in their heads: they try to understand a problem space well enough that they can walk around it the way you can walk around the memory of the house you grew up in. That's particularly valuable at the start of a project, because initially the most important thing is to be able to change what you're doing. Your code is your understanding of the problem you're exploring. It's not easy to get a program into your head. Even the best programmers don't always have the whole program they're working on loaded into their heads. Avoid distractions. Even more striking are the number of officially sanctioned projects that manage to do all eight things wrong.

Signs that you're a bad programmer - Software Engineering Tips Why was this written? Most of these faults were discovered the hard way by the author himself, either because he committed them himself or saw them in the work of others. This paper is not meant for grading programmers, it was intended to be read by programmers who trust their ability to judge when something is a sign of bad practice, and when it's a consequence of special circumstances. This paper was written to force its author to think, and published because he thinks you lot would probably get a kick out of it, too. 1. Reasoning about code means being able to follow the execution path ("running the program in your head") while knowing what the goal of the code is. Symptoms Remedies To get over this deficiency a programmer can practice by using the IDE's own debugger as an aide, if it has the ability to step through the code one line at a time. 2. Object Oriented Programming is an example of a language model, as is Functional or Declarative programming. 3. 4. 5. 6. 1. 2. 3. 4. 5. Symptoms

A.S.B. & Who doesnt like a blonde joke? A blonde walks into a bank in New York City and asks for the loan officer. She says she’s going to Europe on business for two weeks and needs to borrow $5,000. The bank officer says the bank will need some kind of security for the loan, so the blonde hands over the keys to a new Rolls Royce. The car is parked on the street in front of the bank; she has the title, and everything checks out. The bank agrees to accept the car as collateral for the loan. The bank’s president and its officers all enjoy a good laugh at the blonde for using a $250,000 Rolls as collateral against a $5,000 loan.

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!). 1. Complete set of course materials. 2. This course is the natural successor to Programming Methodology and covers such advanced programming topics as recursion, algorithmic analysis, and data abstraction using the C++ programming language, which is similar to both C and Java. 3. Advanced memory management features of C and C++; the differences between imperative and object-oriented paradigms. 4. The purpose of this course is to introduce you to basics of modeling, design, planning, and control of robot systems. 5. 6. 7. 8. 9. 10. Continuation of Convex Optimization I. 11. 12.

Related: