michaelfox + tutorial 232
Tutorial: OAuth - Google Chrome Extensions - Google Code
march 2011 by michaelfox
OAuth is an open protocol that aims to standardize the way desktop and web applications access a user's private data. OAuth provides a mechanism for users to grant access to private data without sharing their private credentials (username/password). Many sites have started enabling APIs to use OAuth because of its security and standard set of libraries.
This tutorial will walk you through the necessary steps for creating a Google Chrome Extension that uses OAuth to access an API. It leverages a library that you can reuse in your extensions.
This tutorial uses the Google Documents List Data API as an example OAuth-enabled API endpoint.
chrome
api
extension
reference
resources
documentation
tutorial
oauth
This tutorial will walk you through the necessary steps for creating a Google Chrome Extension that uses OAuth to access an API. It leverages a library that you can reuse in your extensions.
This tutorial uses the Google Documents List Data API as an example OAuth-enabled API endpoint.
march 2011 by michaelfox
Rake Tutorial | Jason Seifer
december 2010 by michaelfox
If you’re developing with Rails you’ve probably encountered rake once or twice. This blog post aims to walk you through where rake came from and an introduction on how to use it effectively in your Rails apps.
A Little Bit of History
Rake is the project of Jim Weirich. It’s a build tool. For a good laugh and an even more in depth history check out the "rational.rdoc" from the Rake documentation. Essentially, rake started as an idea for using Ruby inside of a Makefile. Though Jim doesn’t sound convinced from the tone in that document, it is a good idea.
programming
rails
ruby
tutorial
rake
make
build
tools
howto
A Little Bit of History
Rake is the project of Jim Weirich. It’s a build tool. For a good laugh and an even more in depth history check out the "rational.rdoc" from the Rake documentation. Essentially, rake started as an idea for using Ruby inside of a Makefile. Though Jim doesn’t sound convinced from the tone in that document, it is a good idea.
december 2010 by michaelfox
Ultimate Guide to Website Wireframing
november 2010 by michaelfox
Most designers wireframe their designs in one way or another, even if it just involves them making quick sketches on the back of some scratch paper. Wireframing is an important part of the design process, especially for more complex projects.
Wireframes can come in handy when you’re communicating with clients, as it allows them to visualize your ideas more easily than when you just describe them verbally.
This guide covers what you need to know about website wireframes to get started.
design
development
ui
webdesign
wireframe
planning
tools
interface
ux
tutorial
bestpractices
templates
inspiration
prototype
wireframes
wireframing
reference
webdev
resources
Wireframes can come in handy when you’re communicating with clients, as it allows them to visualize your ideas more easily than when you just describe them verbally.
This guide covers what you need to know about website wireframes to get started.
november 2010 by michaelfox
Introduction to using vim for Rails development ... - GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS
november 2010 by michaelfox
Introduction to using vim for Rails development
Someone recently asked us to do “vim on Rails” screencasts.
So, we’re responding with this experiment. Let us know if this is valuable and we’ll try to improve things like audio quality.
rails
screencast
ide
screencasts
tutorial
ruby
development
editor
vim
linux
howto
video
environment
tools
resources
reference
dotfiles
config
setup
Someone recently asked us to do “vim on Rails” screencasts.
So, we’re responding with this experiment. Let us know if this is valuable and we’ll try to improve things like audio quality.
november 2010 by michaelfox
thoughtbot is filled with vim and vigor - GIANT ROBOTS SMASHING INTO OTHER GIANT ROBOTS
november 2010 by michaelfox
Slowly over the past year thoughtbot has turned from an all-TextMate (and one Emacs) group into a mostly-vim group. Here are some tips, tricks, and scripts we’ve mastered along the way:
vim
development
plugins
reference
tips
tutorial
ack
november 2010 by michaelfox
Interactive CouchDB | Mu Dynamics
october 2010 by michaelfox
This is a CouchDB emulator/visualizer written in 100% JavaScript, which implements key concepts like collation, map/reduce and incremental reduce. It also acts as a 2-minute CouchDB tutorial. No documents were harmed in this process.
couchdb
demo
javascript
mapreduce
tutorial
simulator
resources
tools
map
reduce
nosql
october 2010 by michaelfox
Cocoa Text System
october 2010 by michaelfox
Apple’s Cocoa text system is a complicated beast, but also extremely flexible, and with a bit of work, it can be molded to match many working styles. This how-to covers the 2 major ways of customizing the text input system: Default key bindings, and for still more control, input managers.
I’m writing this guide because nothing like it currently exists. There is incredible room for flexibility in customizing the Cocoa text environment, but most users—even power-users—have no idea of the available options. This is mostly because Apple’s documentation is 1) aimed at developers, and 2) often incomplete or ambiguous. Most users have no idea that they can look at a file which describes all of the shortcuts on the system, and that they can easily add their own shortcuts, or replace existing ones with differing functionality.
For instance, one of the most common complaints from new Windows and Linux/Unix switchers is that many of the shortcuts they are used to, such as using the Home and End keys to move to the beginning, respectively end, of a line or document, don’t work as they expect in OS X.
For new users, almost every text box you use is a Cocoa text box (or close enough to act the same as far as we’re concerned) — Safari web form boxes, the text field in iChat for sending new messages, the documents in Pages or TextEdit, the email composer in Mail, etc. Note: Some text boxes are not Cocoa however, so the tricks in this article still aren’t completely universal. Notably, Microsoft Word, Adobe applications, AppleWorks, and the text fields in Camino and Firefox won’t work with this hint.
I expect that all users of OS X can get something out of this guide. I’m starting with the basics, so that new users, unfamiliar with the terminal and the intricacies of OS X can be brought up to speed. But even the most experienced users should hopefully learn something from this article; I know I learned several new nifty things while writing it.
Disclaimer: it is possible, when mucking around with the text system, to send applications messages they aren’t expecting. This can cause them to crash. As long as you stick to standard text selectors, you should be fine, but I’m not responsible if your program crashes because of a binding you add.
bindings
cocoa
keybindings
keyboard
text
osx
mac
programming
development
textmate
input
editing
system
hack
productivity
editor
howto
tutorial
reference
★
I’m writing this guide because nothing like it currently exists. There is incredible room for flexibility in customizing the Cocoa text environment, but most users—even power-users—have no idea of the available options. This is mostly because Apple’s documentation is 1) aimed at developers, and 2) often incomplete or ambiguous. Most users have no idea that they can look at a file which describes all of the shortcuts on the system, and that they can easily add their own shortcuts, or replace existing ones with differing functionality.
For instance, one of the most common complaints from new Windows and Linux/Unix switchers is that many of the shortcuts they are used to, such as using the Home and End keys to move to the beginning, respectively end, of a line or document, don’t work as they expect in OS X.
For new users, almost every text box you use is a Cocoa text box (or close enough to act the same as far as we’re concerned) — Safari web form boxes, the text field in iChat for sending new messages, the documents in Pages or TextEdit, the email composer in Mail, etc. Note: Some text boxes are not Cocoa however, so the tricks in this article still aren’t completely universal. Notably, Microsoft Word, Adobe applications, AppleWorks, and the text fields in Camino and Firefox won’t work with this hint.
I expect that all users of OS X can get something out of this guide. I’m starting with the basics, so that new users, unfamiliar with the terminal and the intricacies of OS X can be brought up to speed. But even the most experienced users should hopefully learn something from this article; I know I learned several new nifty things while writing it.
Disclaimer: it is possible, when mucking around with the text system, to send applications messages they aren’t expecting. This can cause them to crash. As long as you stick to standard text selectors, you should be fine, but I’m not responsible if your program crashes because of a binding you add.
october 2010 by michaelfox
Script Junkie | How to Create Your Own jQuery Plugin
september 2010 by michaelfox
If you have never created a jQuery plugin, it takes just a few simple steps to get started. By following a handful of guidelines, you can develop a plugin that behaves and feels like a native jQuery method.
Before I begin describing these guidelines, I want to acknowledge some sources that were instrumental when I first started learning how to write a jQuery plugin. Some of them have been around a long time, and their content is always top notch.
* Plugins/Authoring on jQuery.com
* A Plugin Development Pattern from Oct 30, 2007, by Mike Alsup
* You Still Can't Create a jQuery Plugin? from Feb 19, 2009, by Jeffrey Way
Why Create a jQuery Plugin?
Here is a brief list of reasons you might want to create a jQuery plugin:
* Reuse, reuse, reuse
* Encapsulation
* Easy to write
* Maintain chainability
* Public distribution
* Prevent namespace clashing
Among these, I think that one of the best reasons to create a plugin is to encapsulate your code for reuse across your project. Plugins are relatively easy to write, so there’s very little holding you back from cleaning up your code and making it easier to maintain. If at some point you bundle your plugin for public distribution, that is great too, but organizing your own personal code is of greatest value. If you do distribute your jQuery plugin to the public, it’s a good idea to provide a namespace for your plugin so that it doesn't collide with one of the many other plugins out there.
If none of these reasons hit home with you, know that jQuery plugins are just plain fun to write, use, and reuse.
jquery
plugin
tutorial
javascript
patterns
Before I begin describing these guidelines, I want to acknowledge some sources that were instrumental when I first started learning how to write a jQuery plugin. Some of them have been around a long time, and their content is always top notch.
* Plugins/Authoring on jQuery.com
* A Plugin Development Pattern from Oct 30, 2007, by Mike Alsup
* You Still Can't Create a jQuery Plugin? from Feb 19, 2009, by Jeffrey Way
Why Create a jQuery Plugin?
Here is a brief list of reasons you might want to create a jQuery plugin:
* Reuse, reuse, reuse
* Encapsulation
* Easy to write
* Maintain chainability
* Public distribution
* Prevent namespace clashing
Among these, I think that one of the best reasons to create a plugin is to encapsulate your code for reuse across your project. Plugins are relatively easy to write, so there’s very little holding you back from cleaning up your code and making it easier to maintain. If at some point you bundle your plugin for public distribution, that is great too, but organizing your own personal code is of greatest value. If you do distribute your jQuery plugin to the public, it’s a good idea to provide a namespace for your plugin so that it doesn't collide with one of the many other plugins out there.
If none of these reasons hit home with you, know that jQuery plugins are just plain fun to write, use, and reuse.
september 2010 by michaelfox
GIT Howto Index
september 2010 by michaelfox
Here is a collection of mailing list postings made by various people describing how they use git in their workflow.
*
maintain-git by Junio C Hamano <gitster@pobox.com>
Imagine that git development is racing along as usual, when our friendly neighborhood maintainer is struck down by a wayward bus. Out of the hordes of suckers (loyal developers), you have been tricked (chosen) to step up as the new maintainer. This howto will show you "how to" do it.
*
rebase-from-internal-branch by Junio C Hamano <gitster@pobox.com>
In this article, JC talks about how he rebases the public "pu" branch using the core GIT tools when he updates the "master" branch, and how "rebase" works. Also discussed is how this applies to individual developers who sends patches upstream.
*
rebuild-from-update-hook by Junio C Hamano <gitster@pobox.com>
In this how-to article, JC talks about how he uses the post-update hook to automate git documentation page shown at http://www.kernel.org/pub/software/scm/git/docs/.
*
recover-corrupted-blob-object by Linus Torvalds <torvalds@linux-foundation.org>
Some tricks to reconstruct blob objects in order to fix a corrupted repository.
*
revert-a-faulty-merge by Linus Torvalds <torvalds@linux-foundation.org>, Junio C Hamano <gitster@pobox.com>
Sometimes a branch that was already merged to the mainline is later found to be faulty. Linus and Junio give guidance on recovering from such a premature merge and continuing development after the offending branch is fixed.
*
revert-branch-rebase by Junio C Hamano <gitster@pobox.com>
In this article, JC gives a small real-life example of using git revert command, and using a temporary branch and tag for safety and easier sanity checking.
*
separating-topic-branches by Junio C Hamano <gitster@pobox.com>
In this article, JC describes how to separate topic branches.
*
setup-git-server-over-http by Rutger Nijlunsing <rutger@nospam.com>
*
update-hook-example by Junio C Hamano <gitster@pobox.com> and Carl Baldwin <cnb@fc.hp.com>
An example hooks/update script is presented to implement repository maintenance policies, such as who can push into which branch and who can make a tag.
*
use-git-daemon
*
using-merge-subtree by Sean <seanlkml@sympatico.ca>
In this article, Sean demonstrates how one can use the subtree merge strategy.
development
git
howto
tools
workflow
collection
reference
tutorial
tips
docs
documentation
resourc
*
maintain-git by Junio C Hamano <gitster@pobox.com>
Imagine that git development is racing along as usual, when our friendly neighborhood maintainer is struck down by a wayward bus. Out of the hordes of suckers (loyal developers), you have been tricked (chosen) to step up as the new maintainer. This howto will show you "how to" do it.
*
rebase-from-internal-branch by Junio C Hamano <gitster@pobox.com>
In this article, JC talks about how he rebases the public "pu" branch using the core GIT tools when he updates the "master" branch, and how "rebase" works. Also discussed is how this applies to individual developers who sends patches upstream.
*
rebuild-from-update-hook by Junio C Hamano <gitster@pobox.com>
In this how-to article, JC talks about how he uses the post-update hook to automate git documentation page shown at http://www.kernel.org/pub/software/scm/git/docs/.
*
recover-corrupted-blob-object by Linus Torvalds <torvalds@linux-foundation.org>
Some tricks to reconstruct blob objects in order to fix a corrupted repository.
*
revert-a-faulty-merge by Linus Torvalds <torvalds@linux-foundation.org>, Junio C Hamano <gitster@pobox.com>
Sometimes a branch that was already merged to the mainline is later found to be faulty. Linus and Junio give guidance on recovering from such a premature merge and continuing development after the offending branch is fixed.
*
revert-branch-rebase by Junio C Hamano <gitster@pobox.com>
In this article, JC gives a small real-life example of using git revert command, and using a temporary branch and tag for safety and easier sanity checking.
*
separating-topic-branches by Junio C Hamano <gitster@pobox.com>
In this article, JC describes how to separate topic branches.
*
setup-git-server-over-http by Rutger Nijlunsing <rutger@nospam.com>
*
update-hook-example by Junio C Hamano <gitster@pobox.com> and Carl Baldwin <cnb@fc.hp.com>
An example hooks/update script is presented to implement repository maintenance policies, such as who can push into which branch and who can make a tag.
*
use-git-daemon
*
using-merge-subtree by Sean <seanlkml@sympatico.ca>
In this article, Sean demonstrates how one can use the subtree merge strategy.
september 2010 by michaelfox
related tags
*download ⊕ *todo ⊕ accessibility ⊕ ack ⊕ adobe ⊕ advanced ⊕ aftereffects ⊕ air ⊕ airport ⊕ ajax ⊕ amazon ⊕ analytics ⊕ animation ⊕ apache ⊕ api ⊕ app ⊕ apple ⊕ applescript ⊕ apps ⊕ art ⊕ article ⊕ aspectoriented ⊕ atom ⊕ audio ⊕ automation ⊕ automator ⊕ aws ⊕ backup ⊕ bash ⊕ bbq ⊕ beginner ⊕ benchmarking ⊕ bestpractices ⊕ bindings ⊕ blog ⊕ book ⊕ boxee ⊕ boxes ⊕ browser ⊕ browsers ⊕ brushes ⊕ build ⊕ cache ⊕ caching ⊕ calendar ⊕ canvas ⊕ centering ⊕ chart ⊕ cheatsheet ⊕ chrome ⊕ class ⊕ cli ⊕ closure ⊕ cloud ⊕ cloudwatch ⊕ cms ⊕ cocoa ⊕ code ⊕ codecomplete ⊕ codeigniter ⊕ coding ⊕ collection ⊕ commandline ⊕ compass ⊕ composer ⊕ config ⊕ contenteditable ⊕ coredata ⊕ corners ⊕ couchdb ⊕ crawler ⊕ cron ⊕ crontab ⊕ css ⊕ css3 ⊕ curl ⊕ customevents ⊕ customization ⊕ data ⊕ database ⊕ db ⊕ debugging ⊕ demo ⊕ demonstration ⊕ deployment ⊕ design ⊕ designmode ⊕ developer ⊕ development ⊕ devops ⊕ dialog ⊕ dns ⊕ docs ⊕ documentation ⊕ dotfiles ⊕ download ⊕ drum ⊕ dynamiccss ⊕ ebooks ⊕ ec2 ⊕ editing ⊕ editor ⊕ ee ⊕ effect ⊕ email ⊕ encapsulation ⊕ environment ⊕ etag ⊕ event ⊕ example ⊕ exercise ⊕ expires ⊕ express ⊕ expressionengine ⊕ extension ⊕ facebook ⊕ familytree ⊕ files ⊕ filter ⊕ firebug ⊕ firefox ⊕ fitness ⊕ fixed ⊕ flot ⊕ footer ⊕ form ⊕ format ⊕ formatting ⊕ forms ⊕ fragment ⊕ framework ⊕ gamedev ⊕ geek ⊕ geektool ⊕ generator ⊕ geolocation ⊕ get ⊕ gh-pages ⊕ GIMP ⊕ git ⊕ git-reference ⊕ github ⊕ gloss ⊕ gmail ⊕ google ⊕ gradient ⊕ gradients ⊕ graph ⊕ graphics ⊕ grid ⊕ gui ⊕ guide ⊕ hack ⊕ hacks ⊕ hash ⊕ header ⊕ headers ⊕ health ⊕ helloworld ⊕ hg ⊕ hierarchy ⊕ highlighting ⊕ hook ⊕ hosting ⊕ howto ⊕ htaccess ⊕ html ⊕ html5 ⊕ http ⊕ httpheader ⊕ ide ⊕ ie ⊕ ie6 ⊕ imagemagic ⊕ images ⊕ imap ⊕ indexing ⊕ inkscape ⊕ input ⊕ inputs ⊕ inset ⊕ inspiration ⊕ inspiration:dotfiles ⊕ install ⊕ interactive ⊕ interface ⊕ ios ⊕ ipad ⊕ iphone ⊕ irc ⊕ iterm ⊕ itunes ⊕ ituneslp ⊕ javascript ⊕ jobs ⊕ jquery ⊕ json ⊕ keybindings ⊕ keyboard ⊕ lamp ⊕ last-modified ⊕ layout ⊕ learn ⊕ learning ⊕ lib ⊕ libraries ⊕ library ⊕ linux ⊕ list ⊕ loadbalancing ⊕ loading ⊕ logic ⊕ logos ⊕ lucene ⊕ mac ⊕ macosx ⊕ make ⊕ management ⊕ map ⊕ mapreduce ⊕ markup ⊕ masking ⊕ media ⊕ menu ⊕ mercurial ⊕ migration ⊕ mobile ⊕ modern ⊕ modular ⊕ modules ⊕ mod_rewrite ⊕ mongodb ⊕ mp3 ⊕ music ⊕ mutt ⊕ mvc ⊕ mysql ⊕ namespaces ⊕ navigation ⊕ negative-margins ⊕ network ⊕ networking ⊕ node ⊕ node.js ⊕ nodejs ⊕ nosql ⊕ nsviewcontroller ⊕ oauth ⊕ objc ⊕ objective-c ⊕ objectivec ⊕ oo ⊕ oop ⊕ optimization ⊕ optimize ⊕ organization ⊕ osx ⊕ pagination ⊕ paleo ⊕ paramaters ⊕ params ⊕ parms ⊕ parseing ⊕ parsing ⊕ path ⊕ paths ⊕ patterns ⊕ performance ⊕ photography ⊕ photoshop ⊕ php ⊕ php5 ⊕ planning ⊕ plastic ⊕ plugin ⊕ plugins ⊕ podcast ⊕ podcasts ⊕ popart ⊕ pre ⊕ preset ⊕ prettify ⊕ pretty ⊕ productivity ⊕ profile ⊕ programming ⊕ prototype ⊕ psd ⊕ python ⊕ quartz ⊕ quartzcomposer ⊕ querycommand ⊕ quicksilver ⊕ rails ⊕ rake ⊕ range ⊕ reason ⊕ record ⊕ redirect ⊕ reduce ⊕ reference ⊕ reflection ⊕ regiestry ⊕ resizing ⊕ resourc ⊕ resources ⊕ rest ⊕ revision ⊕ rewrite ⊕ router ⊕ routing ⊕ rss ⊕ rte ⊕ ruby ⊕ rubycocoa ⊕ sample ⊕ sass ⊕ scaling ⊕ schedule ⊕ scm ⊕ screencast ⊕ screencasting ⊕ screencasts ⊕ screensaver ⊕ scriptaculous ⊕ scripting ⊕ scripts ⊕ scss ⊕ sdk ⊕ search ⊕ selection ⊕ seo ⊕ server ⊕ serverside ⊕ services ⊕ setup ⊕ shell ⊕ showcase ⊕ simplepie ⊕ simulator ⊕ slide ⊕ snippets ⊕ snippits ⊕ social ⊕ sort ⊕ source ⊕ speed ⊕ sphinx ⊕ sql ⊕ sticky ⊕ style ⊕ stylesheets ⊕ sublime ⊕ submodule ⊕ svn ⊕ syntax ⊕ synth ⊕ sysadmin ⊕ system ⊕ table ⊕ techniques ⊕ template ⊕ templates ⊕ terminal ⊕ text ⊕ textmate ⊕ tidy ⊕ timeline ⊕ tips ⊕ tools ⊕ toread ⊕ training ⊕ trance ⊕ tree ⊕ trick ⊕ tutorial ⊖ tutorials ⊕ twitter ⊕ typography ⊕ ubuntu ⊕ ui ⊕ uitableview ⊕ unittesting ⊕ unix ⊕ uploads ⊕ url ⊕ urls ⊕ usability ⊕ utilities ⊕ utils ⊕ ux ⊕ vector ⊕ vectors ⊕ versioncontrol ⊕ vertical ⊕ vertical-center ⊕ video ⊕ videolan ⊕ videos ⊕ vim ⊕ virtualbox ⊕ visualization ⊕ visualizers ⊕ vlc ⊕ warehouse ⊕ web ⊕ web2.0 ⊕ webdesign ⊕ webdev ⊕ webinars ⊕ webservice ⊕ website ⊕ wifi ⊕ wiki ⊕ windows ⊕ wireframe ⊕ wireframes ⊕ wireframing ⊕ wordpress ⊕ work ⊕ workflow ⊕ workout ⊕ wysiwyg ⊕ xcode ⊕ xhr ⊕ xhtml ⊕ xml ⊕ xpath ⊕ xslt ⊕ xsltproc ⊕ xterm ⊕ xul ⊕ zend ⊕ zend.form ⊕ zend.framework ⊕ zend.oauth ⊕ zsh ⊕ ★ ⊕Copy this bookmark: