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 signalfuse/maestro-ng 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?

slafs/cookiecutter-saltstack-formula 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: .

Lightning MDB (aka Lightning Database, LMDB) Symas LMDB is an extraordinarily fast, memory-efficient database we developed for the Symas OpenLDAP Project. With memory-mapped files, it has the read performance of a pure in-memory database while retaining the persistence of standard disk-based databases. In other words, it runs like a bat out of hell, performing several times faster than other DB engines — several orders of magnitude faster in many cases. No buffers or caches needed, no memory copies generated. And it’s only limited to the size of the virtual address space, not to the size of physical RAM. Bottom line, with only 32KB of object code, LMDB may seem tiny. Explore Capabilities How It Compares Here’s a quick comparison of other embedded key value stores. Support and Documentation Commercial support, porting and professional services and documentation. Learn More Commercial Support Symas offers fixed-price commercial support to those using LMDB in your applications. Porting and Professional Services Support Documentation

Git Tips I thought I would get down in a blog post the different Git commands and tips that I find really useful, because every now and then it seems I need to refer back to these notes (which up until this point have been in a txt file in my Dropbox) if I've not used a particular command in a while. Hopefully you'll find them useful too. What we'll cover reading time: approx. 13mins Show where Git is installed which git Show the Git version installed git version Update your global user details git config --global "Your Name" git config --global "Your Email" git config --global apply.whitespace nowarn # ignore white space changes! Set-up a global ignore file First create the global ignore file… touch ~/.gitignore_global Then add the following content to it (this is a standard ignore file but I've added some Sass CSS pre-processor files to it)… You can let Git know about your global ignore file by editing your global .gitconfig file… nano ~/.gitconfig …then adding the following to it…

How was C made? IRC is Back: Here's Your Starter Guide How of many of you remember Compuserve? What about Prodigy? I'm asking because, back in the good 'ole days, they were popular services that allowed you to communicate with other people from all over the world. Some of you may be too young to even know about those services, but I'll go out on a limb and assume that everyone's used either AOL Instant Messenger, Skype, or Yahoo! Everything Old is New Again What I've noticed in the last couple of years is a resurgence in using IRC as a primary means of communication. IRC (Internet Relay Chat) is a protocol, created in 1988, and was meant to help facilitate group discussions, via various channels. What I've noticed in the last couple of years is a resurgence in using IRC as a primary means of communication, especially for open source projects. I'm also going to say (and I'm sure I'll get some grief for it) that I think there's a little bit of "geek cred" action going on here when you can tell someone, "let's chat about it on IRC". Windows