What is Facebook’s Open Graph?

As an individual or a business-owner, you’re going to want to have a good understanding of the complex workings of Facebook’s central platform, the Open Graph. In one sense, the Open Graph is an expanded, enhanced social graph. It’s coded into every action we take on Facebook and on the multitude of sites that have Facebook features integrated. Social graphs (or sociograms) have been around before the Open Graph. Essentially, they methodically organize the online relationships between individuals, objects, images, videos, preferences, etc., and the actions people take on each object. Every instance of “contact” you make between objects or people is plotted in Facebook’s Open Graph—every “like,” every view, every photo uploaded, every wall post—so that you can easily reference information between individuals, and you can measure reach and influence, and trends in unique, actionable ways.

That’s one way of looking at it. A somewhat narrower view is that Open Graph is an application developed by Facebook that helps other people refine applications of their own, using more specific “actions” to attach to “objects.” In the past, this capability was contained within Facebook. Now, however, Open Graph has the capabilities to trace actions from all over the internet and track them through your Facebook profile. Many people are familiar with the “Like” button, but “to like” something is rather vague, but if you think about all of the objects you like put together, you end up with a detailed profile of yourself, showing all of your interests and social connections. The open graph goes much further than the like button but that may well be the most easily understood action one can take using the Open Graph.

Open Graph is seen as a beneficial, powerful, and interesting data source for some and a scary, intrusive, or unavoidable data trap to others. The question and balance needs to be struck between easy access to social networking / preference based web browsing, our privacy rights and responsible marketing.

New FB Plugin Gives Privacy Controls On Other Websites

New Facebook Privacy App

With developers using Facebook’s Open Graph on websites and apps all over the web, users activities are becoming more social because the graph is automatically publishing a lot of activities on other websites and apps (like reading an article on huffpo) into the Facebook News feed or Timeline. Until recently, if you weren’t happy with what got shared on Facebook, you’d have to go to Facebook itself to fix it. Some new privacy functionality can change all of that, according to a new post on Facebook’s developer blog.

After reviewing this nifty little app called the Shared Activity Plugin we were left wondering what it means to allow an app or website to, “take data with you”. The new functionality provides the user ability to adjust the audience controls and what data can be taken from you. The audience controls allow you to set who your updates are shown to or if they are displayed on your timeline. The real benefit for users concerned about who can see some of their activities is, you do have the ability to delete these status updates and wall posts created by actions on applications of other websites and can now prevent them. After all everyone should have a private reading list…

We also concluded through some very scientific research that “almost nobody” would ever dig that deep into their Facebook account settings to find that this even exists. After reviewing the list on our accounts we realized that we were still allowing all kinds of apps to “take data with you”, some these apps we stopped supporting long ago.

Apparently developers can add a plugin to their website that will allow it’s users to adjust their Open Graph privacy settings directly from the site they are on. Lets see if the control aspect proliferates anywhere close to the pace as other open graph integrations (the like button).

, Ian Lowell

Tell me what you know about these electric Sheep!

electric sheep
This sheep was designed by brood. http://electricsheep.org/

I was cruising around the internet trying to understand what someone was explaining to me over the phone when I stumbled over Generation 244.  Electric Sheep is a collaborative abstract artwork that runs like the borg on Star Trek (multiple disparaged network nodes.  Check out the flock of electric sheep, click through each image for the full video – (videos are short).

Vim Commands – Cheat Cheat

Below is a helpful reference I found on the tuxfiles.org website.  Vim is a file editing program most commonly used on Linux/Unix operating systems to edit text files.

Author: Nana Långstedt
Last modified: 5 September 2009
Working with files
Vim command
:e filename
Open a new file. You can use the Tab key for automatic file name completion, just like
at the shell command prompt.
:w filename
Save changes to a file. If you don't specify a file name, Vim saves as the file name
you were editing.  For saving the file under a different name, specify the file name.
Quit Vim. If you have unsaved changes, Vim refuses to exit.
Exit Vim without saving changes.
Write the file and exit.
Almost the same as :wq, write the file and exit if you've made changes to the file.
If you haven't made any changes to the file, Vim exits without writing the file.
These Vim commands and keys work both in command mode and visual mode.
Vim command
j or Up Arrow
Move the cursor up one line.
k or Down Arrow
Down one line.
h or Left Arrow
Left one character.
l or Right Arrow
Right one character.
To the end of a word.
To the end of a whitespace-delimited word.
To the beginning of a word.
To the beginning of a whitespace-delimited word.
To the beginning of a line.
To the first non-whitespace character of a line.
To the end of a line.
To the first line of the screen.
To the middle line of the screen.
To the the last line of the screen.
Jump to line number n. For example, to jump to line 42, you'd type :42

Inserting and overwriting text




Insert before cursor.
Insert to the start of the current line.
Append after cursor.
Append to the end of the current line.
Open a new line below and insert.
Open a new line above and insert.
Change the rest of the current line.
Overwrite one character viagra es con receta. After overwriting the single character, go back to command mode.
Enter insert mode but replace characters rather than inserting.

The ESC key

Exit insert/overwrite mode and go back to command mode.

Deleting text

Vim command


Delete characters under the cursor.
Delete characters before the cursor.
dd or :d
Delete the current line.

Entering visual mode

Vim command


Start highlighting characters. Use the normal movement keys and commands to select text
for highlighting.
Start highlighting lines.

The ESC key

Exit visual mode and return to command mode.

Editing blocks of text

Note: the Vim commands marked with (V) work in visual mode, when you’ve selected some text. The other commands work in the command mode, when you haven’t selected any text.

Vim command


Change the case of characters. This works both in visual and command mode. In visual
mode, change the case of highlighted characters. In command mode, change the case of the
character uder cursor.
> (V)
Shift right (indent).
< (V)
Shift left (de-indent).
c (V)
Change the highlighted text.
y (V)
Yank the highlighted text. In Windows terms, "copy the selected text to clipboard."
d (V)
Delete the highlighted text. In Windows terms, "cut the selected text to clipboard."
yy or :y or Y
Yank the current line. You don't need to highlight it first.
dd or :d
Delete the current line. Again, you don't need to highlight it first.
Put the text you yanked or deleted. In Windows terms, "paste the contents of the
clipboard". Put characters after the cursor. Put lines below the current line.
Put characters before the cursor. Put lines above the current line.

Undo and redo

Vim command


Undo the last action.
Undo all the latest changes that were made to the current line.
Ctrl + r

Vim command


Search the file for pattern.
Scan for next search match in the same direction.
Scan for next search match but opposite direction.
Vim command
Substitute foo with barr determines the range and a determines the arguments.
The range (r) can be
Work on current line only.
Work on the line whose number you give.
The whole file.
Arguments (a) can be
Replace all occurrences in the line. Without this, Vim replaces only the first
occurrences in each line.
Ignore case for the search pattern.
Don't ignore case.
Confirm each substitution. You can type y to substitute this match, n to skip this
match, a to substitute this and all the remaining matches ("Yes to all"),
and q to quit substitution.
Replace the first occurrence of the word foo with bar on line number 452.
Replace every occurrence of the word foo with bar on current line.
Replace every occurrence of the word foo with bar in the whole file.
The same as above, but ignore the case of the pattern you want to substitute. This
replaces fooFOO, Foo, and so on.
Confirm every substitution.
For each line on the file, replace the first occurrence of foo with bar and confirm
every substitution.


Microsoft ASP.NET MVC, Web API and Razor Go Open Source

Microsoft has made the source code of ASP.NET MVC available under an open source license since the first V1 release. We’ve also integrated a number of great open source technologies into the product, and now ship jQuery, jQuery UI, jQuery Mobile, jQuery Validation, Modernizr.js, NuGet, Knockout.js and JSON.NET as part of it.

I’m very excited to announce today that we will also release the source code for ASP.NET Web API and ASP.NET Web Pages (aka Razor) under an open source license (Apache 2.0), and that we will increase the development transparency of all three projects by hosting their code repositories on CodePlex (using the new Git support announced last week). Doing so will enable a more open development model where everyone in the community will be able to engage and provide feedback on code checkins, bug-fixes, new feature development, and build and test the products on a daily basis using the most up-to-date version of the source code and tests.

We will also for the first time allow developers outside of Microsoft to submit patches and code contributions that the Microsoft development team will review for potential inclusion in the products. We announced a similar open development approach with the Windows Azure SDK last December, and have found it to be a great way to build an even tighter feedback loop with developers – and ultimately deliver even better products as a result.

Very importantly – ASP.NET MVC, Web API and Razor will continue to be fully supported Microsoft products that ship both standalone as well as part of Visual Studio (the same as they do today). They will also continue to be staffed by the same Microsoft developers that build them today (in fact, we have more Microsoft developers working on the ASP.NET team now than ever before). Our goal with today’s announcement is to increase the feedback loop on the products even more, and allow us to deliver even better products. We are really excited about the improvements this will bring.

Thanks to Scott Gu for the blog on this, you can learn more and read his original post here.

The Elegant Universe Video Series

This is an amazingly easy to understand explanation of the universe, string theory, quantum mechanics, physics and parallel universes.  Einstein was several generations ahead of his time!

Watch The Elegant Universe: Part 1 on PBS. See more from NOVA.

NOVA | The Elegant Universe | Watch the Program | PBS.