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.

Node.js Explained @codemonkeyism @codemonkeyism » 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 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

Michael Yong: How did Michael Yong get good enough to pass a Quora/Google interview shortly after switching to Computer Science PlantUML PlantUMLis a component that allows to quickly write : Diagrams are defined using a simple and intuitive language. This can be used within many other tools. Images can be generated in PNG or SVG format. It is also possible to generate ASCII art diagrams (only for sequence diagrams). This example is working thanks to the online demo server.

Microsoft: What is it like to work on Bing's Core Relevance and Ranking team

Related: