Now we have all the cloud hype for a while (which is still just virtualization and clustering, no change there), and now it’s time for relevant technologies to ripe up. And one of the most notable results of that production is SDN, software defined networking. To put it plainly, vendors and organizations (like ONF) are building a set of solution that would allow all networking devices to work with each other, eliminating all the lock-ins of any one traditional vendor.

The lock-ins. As far as we know, standards and protocols are difficult and lengthy to standardize and populate…Vendors would rather implement their own features and hoping for it to grow big enough to be standardized later on.

As a network engineer, we all feel the pain of multi-vendor management. Product from different vendors don’t always work together. Every vendor has their closed operating system, and their special features that other vendor may not support. So our jobs get a lot more difficult because we have to learn how to configure same thing over and over again simply because the commands are different and the operating systems are different. This is where SDN began.

SDN solves part of the problem that I’m describing here, unifying features/protocols implementation from different vendors. But more importantly, as its name suggests, SDN is about managing the network centrally using controllers.

Openflow is perhaps one of the more notable representative of SDN solution. Openflow is a stack of solutions that manages the flow of network traffic from a central location by controlling/manipulating the forwarding table of different devices. A lot different vendors, including Cisco, HP, Brocade, have promised to be compliant with Openflow APIs.
VMWare is also building their SDN solution, and similar to Openflow, has already had big vendors vouching in. Unlike Openflow, which requires you to build your own script and use various API from different vendors, VMWare is building a GUI version that will end up somewhat similar to a network management system. Cool, looking forward to see it in their next product release :)
And the audience are not a small group either. Google is already using Openflow and many Telco and providers are beginning their testing phase of Openflow. So whether or not SDN is the new technology we will be working with in a few years seems promising, but let’s wait for the hype.

Came across this interesting piece of plugin (From superdit.com) the other day, and a lot of the users were wondering if they could use this for a pair of image of different source. So, I did a remake of the plugin that can allow you to input different image pairs.
I’ve changed the CSS styling to use a 16 grid layout. Feel free to change it to suit your need. The image paths are configurable under the pair variable.

Live Example
Download Code

One of the most efficient thing I love about jQuery is that it can do multiple things over a single short line, like this $(‘div’).addClass(‘text’).attr(‘data-role’, ‘content’).text(‘New Text’); . Here is the complete code. For live example, see this JSBin snippet.
[javascript]
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<title>Chaining</title>
</head>
<body>
<div>Text Block 1</div>
<div>Text Block 2</div>
<div>Text Block 3</div>
<div>Text Block 4</div>
<script>$(document).ready(function() { $(‘div’).addClass(‘text’).attr(‘data-role’, ‘content’).text(‘New Text’); });</script>
</body>
</html>
[/javascript]

This means what used to be a 10 line code now becomes one, yay! Not only does the code takes less space, you’re able to aggregate sections of code better. However, when doing this, note that one thing is extremely important. Make sure that the function is returning a jQuery object (which can be verified by looking at the documentation of the function). If the function can’t return a jQuery object, you’d have to add ‘return this’ to the end (which usually means you’ll be working with a function)…And the same applies if you wish to create your own chainable function :)

I used to hate JavaScript, I really did, because it’s so picky about what you write and absolutely no warning about what’s wrong when something funny happens. But well, I’m glad I know jQuery now. It’s much more efficient and simple way to get things done right. In this post, I’ll go over some of the interesting facts that I’ve collected since I know jQuery.

1- Function called with or without parentheses

  • When assigning a function to a variable, just use the function name.
  • When calling the function inside and anonymous function, use the name followed by parentheses.
  • When calling the function inside an action parentheses, just use the function name, as if you were assigning the function to act when this action is happening.

[javascript]
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script></head>
<body>
</body>
</html>
/* Method 1 – called with
$(document).ready(function() {
addTitle();
});*/

/* Method 2 – called inside ready */
$(document).ready(addTitle);

function addTitle() {
$(‘body’).append(‘h2′).text(‘Title 2′);
}
[/javascript]

Here is the code snippet on JSBin: http://jsbin.com/oqiyot/1/edit

Protected: 关于‘动起来’

August 4th, 2012 in Miscellaneous - Enter your password to view comments.

This content is password protected. To view it please enter your password below:

About Mobu

August 3rd, 2012 in Miscellaneous - Tags: , - 2 Comments

Mobu is this idea that I’ve had since last week. I read a post about flashmobs for hire, not too long ago. It was based on the idea that a large group of people can gather quickly for something meaningless, so can they gather for something much more meaningful.
For example, if you want to find 50 volunteers for the charity marathon that’s taking place tomorrow. Or if you need someone to be there for the first opening day of your shop, Mobu is what this is for. Things to do and places to be for people with available time.

Honestly, this doesn’t make Mobu any different from any other event publishing or hiring platform. In fact, it makes the idea of Mobu very vague. I think, it’s the vagueness of Mobu is what’s making it multi-purpose.
I’ll be speaking about Mobu on Sunday’s Bar-Camp event in Beijing. For more details, see this link

In a WordPress multisite setup, we use what is called blog ID to identify different child sites that are configured in the multisite setup. To find the blog ID of a child site, first log into your network admin configuration panel.

Get-Blog-ID-Part-I

Get-Blog-ID-Part-I

Go to Sites section on the left side, and choose the child site whose blog ID you want to see by clicking on its name.

Get-Blog-ID-Part-II

Get-Blog-ID-Part-II

After entering the details page, pay attention to the address bar. You will find it looks like this: http://domain.com/wp-admin/network/site-info.php?id=N, where N is your blog ID.

Get-Blog-ID-Part-III

Get-Blog-ID-Part-III