background preloader

Styleguide - Style guides for Google-originated open-source projects

Styleguide - Style guides for Google-originated open-source projects
Every major open-source project has its own style guide: a set of conventions (sometimes arbitrary) about how to write code for that project. It is much easier to understand a large codebase when all the code in it is in a consistent style. “Style” covers a lot of ground, from “use camelCase for variable names” to “never use global variables” to “never use exceptions.” This project holds the style guidelines we use for Google code. If you are modifying a project that originated at Google, you may be pointed to this page to see the style guides that apply to that project. Our C++ Style Guide, Objective-C Style Guide, Java Style Guide, Python Style Guide, Shell Style Guide, HTML/CSS Style Guide, JavaScript Style Guide, AngularJS Style Guide, Common Lisp Style Guide, and Vimscript Style Guide are now available. If your project requires that you create a new XML document format, our XML Document Format Style Guide may be helpful. Related:  Developer

Sourcegraph Node.js Explained @codemonkeyism @codemonkeyism » The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) by Joel Spolsky Wednesday, October 08, 2003 Ever wonder about that mysterious Content-Type tag? You know, the one you're supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in Bulgaria with the subject line "???? I've been dismayed to discover just how many software developers aren't really completely up to speed on the mysterious world of character sets, encodings, Unicode, all that stuff. But it won't. So I have an announcement to make: if you are a programmer working in 2003 and you don't know the basics of characters, character sets, encodings, and Unicode, and I catch you, I'm going to punish you by making you peel onions for 6 months in a submarine. And one more thing: In this article I'll fill you in on exactly what every working programmer should know. A Historical Perspective The easiest way to understand this stuff is to go chronologically. And all was good, assuming you were an English speaker. Unicode Hello Encodings Right?

An Introduction to the C++ Standard Template Library (STL) Introduction The Standard Library is a fundamental part of the C++ Standard. It provides C++ programmers with a comprehensive set of efficiently implemented tools and facilities that can be used for most types of applications. In this article, I present an introduction/tutorial on the Standard Template Library, which is the most important section of the Standard Library. I briefly present the fundamental concepts in the STL, showing code examples to help you understand these concepts. The article requires and assumes previous knowledge of the basic language features of the C++, in particular, templates (both function templates and class templates). For a detailed description or listing of all the STL facilities, you should consult a reference material, such as Bjarne Stroustrup's The C++ Programming Language, 3rd edition , or Matthew Austern's Generic Programming and the STL. Containers and Iterators Pop quiz: What do arrays and linked lists have in common? Linked lists: while (current !

The Elements of Computing Systems / Nisan & Schocken How I hired a great web developer on oDesk for $12/hr | Aymeric Gaurat-Apelli I am working on the weekly planner called Week Plan and I decided I needed someone to help me develop it while I focus on the other tasks of the business. Many people resist the idea of outsourcing so I thought I would show how I went through the process myself and found a great web developer. 1. Post the job on oDesk Title: The title should be as descriptive as possible to attract the right people.Description: The job description should contain the technology required, and what the developer will be working on. I also inserted a “spam trap”: I ask inside the job description the applicants to start their job application with the word “WEEKPLAN”. Budget: I prefer to pay freelancers hourly rather than on a project basis but financially it makes more sense to pay per project because freelancers always underestimate the size of a project. Ratings: I request the developers to have at least 4.5 stars ratings. 2. So now you are receiving applications for your job. 3. 4. This is the end result: .

mame/quine-relay Learn to Program, by Chris Pine A Place to Start for the Future Programmer I guess this all began back in 2002. I was thinking about teaching programming, and what a great language Ruby would be for learning how to program. I mean, we were all excited about Ruby because it was powerful, elegant, and really just fun, but it seemed to me that it would also be a great way to get into programming in the first place. Unfortunately, there wasn't much Ruby documentation geared for newbies at the time. Some of us in the community were talking about what such a "Ruby for the Nuby" tutorial would need, and more generally, how to teach programming at all. And it wasn't very good. What saved me was that I made it really easy for people to contact me, and I always tried to help people when they got stuck. A couple of years later, it was getting pretty good. :-) So good, in fact, that I was ready to pronounce it finished, and move on to something else. Thoughts For Teachers About the Original Tutorial Acknowledgements

Related: