Sunday, June 8, 2008

How to Attract Software Developers that Fit Your Company

I’ve worked for startups and stalwarts, small shops and large corporations, firms where software is the means to an end, and firms where it was an end in itself. After years of exploring what I love about building software I’ve realized that coding for a 17-person dot com is a far cry from building enterprise software for a 300-person credit card company. It only took me eight years to figure out why.

There are a myriad of articles on interviewing, evaluating, and hiring software developers, but a topic that’s rarely discussed is how to attract software developers that fit your company’s environment. With the current state of the software job market, it’s critical as a hirer that you determine not only what type of developers will be happy in your environment (your “developer demographic”), but how you can become more attractive to that particular slice of the market.

Your Developer Demographic

As an example, IndyMac and Countrywide are large financial institutions with development offices in Los Angeles. They attract people looking for stable jobs with good benefits where they can code 9 to 5 and then go home and not think about it from 5 to 9. I envy people who do not grow bored with this environment; I really do. Life would be much, much simpler if I could handle it.

There are also tech startups that attract caffeine-junkies. Long hours with potentially large reward, and the prospect of building something really cool in a short amount of time that could make a difference in peoples’ lives. Or, more likely, be relegated to the failed startup scrap heap. These companies should be looking for people who love using new technology, are typically younger, willing to take risks, and willing to shoot from the hip.

These may be extreme cases, but they illustrate the point: certain attitudes and personality traits play nicely with certain environments. Often, a developer who thrives in one environment will find that she slowly withers away in others.

The Three Dimensions

To get more specific, there are three dimensions to a company that most affect the internal environment for a software developer. It’s critical that you know which of these your company falls into, and not only market to, but ensure you can retain developers who fit that demographic. The descriptions of the software developers who like to work at each corporate classification are generalized, but they serve as a guide to get you thinking about the personality of your ideal candidate.

Your company may not match exactly with one of the choices below each dimension, but do your best to categorize it. Many companies start off as one thing and transition to something very different in the first year or two.

1. Size

* Small - Some small companies are startups, and some are 10-year old, profitable, mature businesses that make money hand over fist with 9 employees. Software developers who like small companies are typically social, they like the vibe of knowing everyone, going to lunch with the same people, and knowing that they contribute a great deal to the success or failure of the enterprise.

* Large - The bulk of corporate development is for larger companies. They tend to have big teams, lots of process, and decent-sized QA and Change Management teams. Software developers who like large companies tend to enjoy more process, like working on larger teams where they can either lead or be led, and enjoy the possibility for growth that comes with a large organization.

2. Chaos Level

* Stable - Stable companies tend to be, um…stable. They have good benefits, and employees can often get away with working 8 or 9 hour days. Developers who prefer stable companies are likely a little further along in their career, may have a family, like the consistency of coming in to the same office each day, and enjoy their time out of the office when they don’t have to think about software.

* Startup - Startups tend to be more risky with the possibility of more reward. The salary may not be as high as that of a stable company, but the stock options will be worth six-figures if you can get your bleeding-edge online calendar out the door before Google’s. Benefits tend to be spotty. The hours are long, but it’s more than worth it for developers who are passionate about technology (read: bring books about ASP.NET to the beach), love building software that matters, and enjoy the camaraderie of working on a team of people who share their interests.

3. Focus

* Software (or a technology that relies on software) - These companies rely on software for their main source of revenue, whether they sell it (Microsoft, Intuit), give it away (Google, Craigslist), or offer it on some type of “pay to play” basis (eBay, salesforce.com). Technology firms that rely on software are companies like Palm, Apple, or the guys who make the fingerprint readers I keep seeing at data centers. Software may not be their main source of income, but they are technology companies and software is critical to their product. Software developers who prefer these types of companies enjoy being around other software people; they like the idea that technology is at the core of their company, and they love that they work on real products that people use. In addition, they relish the fact that software firms tend to live towards the cutting edge and are able to constantly upgrade their skills to the latest and greatest.

* Everything Else - These companies make up the majority of companies in the world; their main source of revenue is something other than software - credit cards, lawn furniture - you name it. “Everything else” companies use software to support their business: to track widgets, support their call center, and balance their books. The majority of corporate software jobs are working for companies under this umbrella. Software developers who enjoy this type of company like building applications to support accounting, management, and the people who produce or sell the company’s main product, and they are either very content to know they can go home at night and not think about developing software, or they go home at night and all they think about is they day they can leave the company and work for someone like Google.

Your Company, Your Developer Demographic, Your Job Description
Before writing your job description think hard about where you fall in each of the dimensions. Then think twice as hard about the kind of developer who will be happy at your company. Don’t kid yourself; you can convince the 24 year-old tech hot-shot to work for your financial services company by offering him a huge salary, but he’ll be gone in 9 months because you’re using three-year old technology and developing boring (from his perspective), back-office software.

Once you’ve determined who will be happy at your company, write your job description with that person in mind.

You’re a large company with great benefits? Spell it out in bullet points: plain, simple, and official. Play up your stability.

You’re a small startup with no benefits? Use a casual tone and create excitement. Make that 24-year old hot-shot be dying to work for you.

Even if he has to pay for his own health care.

Automated Software Development Monitoring Helps Credit Suisse

In today's trading environment, a firm's competitive advantage increasingly depends on developing and continuously evolving a high-quality IT infrastructure. But monitoring and managing the software code development process to ensure a quality end product can be a time-consuming, expensive and fallible practice. Which is why Credit Suisse turned to CAST Software's Application Intelligence Platform.

"The two key drivers behind [the use of CAST] were my focus on having the development team increase the quality level of the product we produce, and to be able to measure quality and changes in quality in a quantifiable way," explains Hank Hyatt, Credit Suisse's global head of equities IT.

The key concept behind the CAST platform is to give a company automated software quality governance by providing transparency into the application development process, according to Hyatt. To do this, CAST -- which is also being used by The Depository Trust & Clearing Corp. and Raymond James, among other financial industry participants -- links with the user's source code management system to get inside the relevant application box. The quality of the application is then measured according to five criteria: transferability, changeability, robustness, performance and security. CAST also can drill down into the source code to unearth the root cause of any quality metric that gets flagged, and enable action to be taken to resolve it.

The result -- accessed through the CAST Dashboard -- is an automated structural analysis of the entire business system in question, which extends to the platforms with which the code interacts and includes how the different components are working together. That information then can be used by the relevant supervising manager to better monitor quality and any resulting risks as the application is evolving, rather than at the end of the process. In this way, Hyatt says, problems can be caught earlier in the development process (making them cheaper to rectify), the end quality will be higher, there can be more reuse of frameworks and components across the organization, and there is more-efficient use of the development team's time.

Meanwhile, the increased management visibility into the process makes outsourcing and offshoring of development work more viable -- in theory -- since there is more transparency into the code that is created externally, and tighter control over the arrangement can be exercised through specific service level agreements (SLAs), Hyatt adds. Indeed, the initial impetus for Hyatt behind CAST's use stemmed from his intention to engage in a large-scale offshoring effort with a couple of India-based vendors, and his desire to ensure that when working with his systems they did what he asked them to do, Hyatt reports.

Automated Software Development Monitoring Helps Credit Suisse

In today's trading environment, a firm's competitive advantage increasingly depends on developing and continuously evolving a high-quality IT infrastructure. But monitoring and managing the software code development process to ensure a quality end product can be a time-consuming, expensive and fallible practice. Which is why Credit Suisse turned to CAST Software's Application Intelligence Platform.

"The two key drivers behind [the use of CAST] were my focus on having the development team increase the quality level of the product we produce, and to be able to measure quality and changes in quality in a quantifiable way," explains Hank Hyatt, Credit Suisse's global head of equities IT.

The key concept behind the CAST platform is to give a company automated software quality governance by providing transparency into the application development process, according to Hyatt. To do this, CAST -- which is also being used by The Depository Trust & Clearing Corp. and Raymond James, among other financial industry participants -- links with the user's source code management system to get inside the relevant application box. The quality of the application is then measured according to five criteria: transferability, changeability, robustness, performance and security. CAST also can drill down into the source code to unearth the root cause of any quality metric that gets flagged, and enable action to be taken to resolve it.

The result -- accessed through the CAST Dashboard -- is an automated structural analysis of the entire business system in question, which extends to the platforms with which the code interacts and includes how the different components are working together. That information then can be used by the relevant supervising manager to better monitor quality and any resulting risks as the application is evolving, rather than at the end of the process. In this way, Hyatt says, problems can be caught earlier in the development process (making them cheaper to rectify), the end quality will be higher, there can be more reuse of frameworks and components across the organization, and there is more-efficient use of the development team's time.

Meanwhile, the increased management visibility into the process makes outsourcing and offshoring of development work more viable -- in theory -- since there is more transparency into the code that is created externally, and tighter control over the arrangement can be exercised through specific service level agreements (SLAs), Hyatt adds. Indeed, the initial impetus for Hyatt behind CAST's use stemmed from his intention to engage in a large-scale offshoring effort with a couple of India-based vendors, and his desire to ensure that when working with his systems they did what he asked them to do, Hyatt reports.

The Microsoft .NET Framework

The .NET Framework is the infrastructure for the Microsoft .NET platform.


The .NET Framework is an environment for building, deploying, and running Web applications and Web Services.


Microsoft's first server technology ASP (Active Server Pages), was a powerful and flexible "programming language". But it was to much code oriented. It was not an application framework and not an enterprise development tool.


The Microsoft .NET Framework was developed to solve this problem.


.NET Frameworks keywords:


* Easier and quicker programming
* Reduced amount of code
* Declarative programming model
* Richer server control hierarchy with events
* Larger class library
* Better support for development tools


The .NET Framework consists of 3 main parts:


Programming languages:

* C# (Pronounced C sharp)
* Visual Basic (VB .NET)
* J# (Pronounced J sharp)


Server technologies and client technologies:

* ASP .NET (Active Server Pages)
* Windows Forms (Windows desktop solutions)
* Compact Framework (PDA / Mobile solutions)


Development environments:

* Visual Studio .NET (VS .NET)
* Visual Web Developer


This tutorial is about ASP.NET.

How to update ID3 tag Information directly from Window Media Player

I am a great music fan and I like to know complete and correct information about the songs. Like most of the time we don't have complete information of songs like their genres, artists, composers, year and lots of other information.

To update song information directly from Window Media Player is very simple. Follow the given steps -

1. Open the library in WMP
2. Right-Click the song you want to update song information and select Find Album Info.
3. WMP uses Web services based architecture which first intelligently try to guess album/artist information from the partly given information.
4. Search the album or artist or If it is automatically searched then select appropriate song information from the given search result.
5. Match the tracks with the obtained tracks.

Now you have updated the song information.

Pros & Cons of this technique
Pros -

1. The whole process of updating information is very quick and can be done during the playback of the song.
2. No need of any other software or third-party plug-ins.
3. My Experience with this feature is wonderful, I found most of the song information.
4. It is quite intelligent enough to guess the Album information correctly.

Cons-

1. Sometimes WMP is not able to make connection with the web service.
2. Not able to find information for less popular, specific geographical constrained songs.

Now you can enjoy the songs with complete information so that you can do research on your own music taste and likeliness. And it also help in managing your music library.

If you like this article then please subscribe to my RSS feed or get articles directly to your inbox.
del.icio.us Tags: window media player,tips

3G iPhone Live Blog at WWDC 2008: Steve Jobs Keynote With Pics

he keynote speech from Apple's CEO at the 2008 Worldwide Developers' Conference will offer a first look at the new iPhone, with 3G network access, and maybe even a videocamera and GPS functionality. Popular Mechanics is live at the Moscone Center.

Friday, June 6, 2008

method to Create an Email Template for Cash Crusader Scripts

You will need to know HTML or have a HTML web page creator such as Dreamweaver, or Microsoft FrontPage.

You must be logged into your Cash Crusader admin panel, click on Plug Ins, click on Advertisement Manager. While you are in the Advertisement Manager, click on Mailer Settings.

In Mailer Settings click as follows: No to send to inboxes only, Yes to allow HTML tags, Yes to Send to in actives, Character Set leave blank, Send to membership Types, tick all of them except suspended and advertiser, under the default shared email subject, name it anything you wish it to be and click “Save Settings”.

At the bottom of the Mail Settings is the Mail Header Sets. Click Create New Set. Name it whatever you wish like “Default” and click “Save Header/Footer Set”.

You have now created your first template, though it’s blank, this is where your HTML experience will come into play. Set aside that while you work on the email template.

Create a webpage, a full and complete webpage you would like to see as an email for your paid to read website. While you are working on your webpage/email template you also need to leave gaps from where the top of the email will stop, and the member’s ad will be inserted. Example “Name of PTR Paid Ad” right after that leave a gap. You will also need to leave a gap after the email has finished and the disclaimer and possible cheat link will go. You are basically creating a header and footer, just like how the Cash Crusader web pages work, so will this email template. The sections are named top and bottom sponsor but you can place anything in it you wish. Such as a greeting, banners, site logo, rules, tips and tricks. This is why I refer to it a full complete webpage. What you see as the webpage in your browser when you have finished, is what you are going to see in the email in Outlook Express. You can use CSS scroll bars or straight HTML.

With your completed webpage, you will need to view the HTML of what you created.

Back within your Cash Crusader admin panel, Mailer Settings, down to the Mail Header Sets, click on the default header you just created. Tick the box on the right, and scroll down and click “Edit Set”. Take the top half of the HTML and paste it into the Email Header section. Be sure the HTML stops right after you make the announcement note of the paid member’s ad. If you have a divider in your webpage you created, copy and paste that information into the Ads splitter section. In the Email Footer section, paste the rest of the email template you created. Confirm you have placed a divider at the top of that section as the Mailer script will not place one there automatically, it will only place dividers when needed, like between ads.

Click Save Header/Footer Set; make sure the email template you just created is marked as default. The next mailer sent out of your cash crusader site after you have completed these tasks will have your new email template.

Tuesday, June 3, 2008

in latest customer service rankings multichannel tools found lackingWeb 2.0

Decision makers are increasingly turning to Software as a Service (SaaS) or on-demand, but the model, which has seen so much success with sales force automation (SFA), has some limitations with customer service.

"As IT begins to modernize, they look at the next generation of enterprise application suite and ask, 'Do I do something different?' and as they get to 'something different' they get to Software as a Service," Maoz said. "They have to weigh IT modernization requirements with business agility and business improvement. But today, the line of business is stepping in and saying good luck with IT modernization. I'm going my way. I'm not asking your permission -- I may ask your forgiveness."

While IT has adapted to that scenario with SFA, SaaS customer service applications have yet to demonstrate viability for large, complex contact centers, according to the report.

Oracle's on-demand application is still immature when it comes to customer service and support, RightNow Technologies does not have the clout to reach the wider audience, and Salesforce.com's service and support offering is primarily for smaller business-to-business operations, Maoz said.

Another area in need of improvement is support for multiple channels of communication and bringing communications into the CRM software.

"The contact center is not the call center," Maoz said. "The contact center is the way you make contact with the customer. It could be a formal call center, but it also means when they come into your website. Those supporting technologies that support multichannel interaction tend to be infrastructure players -- Genesys, Avaya. You don't have the business application as embedded in that communications application."

there are five steps to becomming a better codder

A programmer friend of mine use to always tell me how his memorization of over 200 function in C++ helped him greatly. " I never have too look up a function definitions , therefore I can code 50% faster then the average coder" he would tell me. So what happened? Intellisense for one, two when C# came out all his diligence in memorizing functions went to waste as he had to learned a new language. Of course in coding some memorization is a necessity but you should spend more time learning the method of doing things, IE creating a db connection, consuming a RSS feed, etc. etc then memorizing how to do them. Learn the correct methods of doing thing, don't memorize.
Tip 2. Create your own Resource library

We all have a block of code that for some reason or another we have to look up. I can never remember the exact sequence of code to connect to a database. So every time I had to do this I would spend 10 minutes finding the book, looking up the link, etc. To combat this I created a word document that has snippets of code that I have trouble remembering for some reason or another. One of my colleagues creates a bookmarks of links, another stores all his in a email. What ever your method is its a good habit to keep that file close by . The point is that you should be building you knowledge base and you will find that it will greatly help you in coding better and faster.

Sunday, June 1, 2008

Future of Internet-The Grid

That is the dream. But the reality is that today, the Grid is a "work in progress", with the underlying technology still in a prototype phase, and being developed by hundreds of researchers and software engineers around the world.

The Grid is attracting a lot of interest because its future, even if still uncertain,is potentially revolutionary.

So the interest comes not only from experts in computer science, but from scientists, businessmen, journalists and, presumably, you, the browser of this website!

Which brings us to the long answer, which is, in fact, the rest of this website!

A good place to start a virtual tour of the Grid is by trying to understand why scientists want the Grid, and what they dream it could be.


WILL "THE GRID" EVER BECOME A REALITY?

Referring to Grid computing as "The Grid" is a convenient shorthand, but it also can lead to a lot of confusion.

The reality, now and for a while to come, is that there is not one single "Grid" (as there is one single "Internet" and one single "Web"). Indeed, there are some experts who believe that there may never be one single Grid. Instead, there are many Grids evolving, some private, some public, some within one region or country, some of truly global dimensions. Some dedicated to one particular scientific problem, some all-purpose.

Compared to the Dreamers' Grid, these Grids all have very restricted capabilities for the moment. But they are gradually growing and becoming more sophisticated. And thanks to the Dreamers, there is still a lot of enthusiasm for the same long-term vision: a scenario where the computer power and storage capacity of millions of systems across a worldwide network function as a pool that could be used by pretty much anyone who needs it.

To achieve this, complex systems of software and services must be developed. That's why many IT experts all over the world, from science and from industry, have started Grid development efforts.

AdSense for RSS Feeds - Coming Soon.

“Starting next week, we'll be rolling out AdSense for feeds to a small group of publishers, in anticipation of a full launch to all FeedBurner and AdSense publishers "coming soon". If you start seeing "Ads by Google" on an ad in a feed somewhere, that'd be us.”

Steve also says - “For publishers who are not yet placing ads in their feeds, any publisher who meets the requirements to join the AdSense program will also be able to use AdSense for feeds. You will be able to manage your feed ad units directly from AdSense Setup tab, and track performance right on the AdSense Report tab. You can slice, dice, mix, or mash your tracking across feed units and content units, or keep them totally separate. You're in control. You can still control the frequency and rules around when ads appear in your feeds, without having to mess with templates on your content management system.”

“We'll give you the full details on AdSense for feeds, including supported formats, how to sign up, etc., etc. when we're ready for the full launch to all publishers. In the meantime, FeedBurner feeds will continue to be fed as usual, and we'll be reaching out to select publishers individually to try out AdSense for feeds.”

FeedBurner is doing beta testing on some of the selected feeds one of which is of popular blog inhabitat . You can easily see the integrated adsense ads.I do not know whether we can try out different size of ads or not? Whether we can embed image ads also or not? Well, Pandora box will open only after a week. But I am really waiting for its launch so that I can start experimenting with it. Please share your views about this post.

Friday, May 30, 2008

ASP.NET MVC Source Refresh Preview

Last month we used it to publish the first drop of the ASP.NET MVC source code. This first drop included the source for the ASP.NET MVC Preview 2 release that we shipped at MIX, along with Visual Studio project files to enable you to patch and build it yourself.

A few hours ago we published a refresh of the ASP.NET MVC source code on the site. This source refresh is not an official new ASP.NET MVC preview release - instead it is an interim drop that provides a look at the current state of the source tree. We will ship the official "ASP.NET MVC Preview 3" release in a few weeks after we finish up some more work (more features and tweaks to existing ones, better VS tool integration, VS express edition support, documentation, etc). If you are someone who wants a hassle-free installation of ASP.NET MVC to use that ships with documentation and full tool support you'll probably want to wait for this official preview release. If you are someone who wants a chance to see an early "preview of the preview" and have the opportunity to start using and giving feedback on some of the features immediately, today's source refresh is probably interesting to look at.
Improvements with this ASP.NET MVC Source Refresh

This week's update (which you can download here) includes a number of improvements to ASP.NET MVC. Some of these include:

*

In addition to posting the source code for the ASP.NET MVC framework, we are also posting the source code for the unit tests that we use to test it. These tests are implemented using MSTest and the open source Moq mocking framework. A VS 2008 project file for the unit tests is included to make it easy to build and run them locally within your VS 2008 IDE.

*

Significantly easier support for testing Controller classes. You can now unit test common Controller scenarios without having to mock any objects (more details on how this works below).

*

Several nice feature additions and usability improvements to the URL routing system (more details below).

Creating a New ASP.NET MVC Project]



You can build your own copy of the ASP.NET MVC assemblies by downloading the MVC source and compiling it locally, or alternatively you can download a VS Template package to get a pre-built version of them along with a Visual Studio project template that you can use to quickly build a new ASP.NET MVC Project that uses the latest bits.

After you install the ASP.NET MVC source refresh .VSI template, a new "ASP.NET MVC Application" project template will show up under the "My Templates" section of your "New Project" dialog:

This new "My Templates" version of the MVC project template lives side-by-side with the previous ASP.NET MVC Preview 2 release (which you can see above it in the main project templates section of the dialog). This allows you to safely create new projects and and use both the latest source version and the last official preview version on the same machine.

When you create a new project using this updated ASP.NET MVC Project template you'll by default get a project that looks like below:

This new project solution contains one Controller ("HomeController") under the "\Controllers" directory and two View templates ("About" and "Index") under the "\Views\Home" sub-directory. Both view templates are based on a common master page for the site ("Site.master"), all of whose styles are defined within a "Site.css" file under the "\Content" directory.

When you run the application the built-in web-server will automatically start up and you'll see the site's "Home" content:

Clicking the "About us" tab will then display the "About" content:

The "HomeController" class in the project is responsible for handling both of the URLs above and has two action methods like below:


The default "Site.master" template looks for a "Title" value in the ViewData collection and uses it to render the element of the HTML page. The default "Index" view template looks for a "Message" value and uses it to render the home page's welcome message. You can obviously go in and customize these files however you want. <br />Controller Changes with this ASP.NET MVC Drop <br /> <br />If you were reading the above code closely you might have noticed a few changes with how Controller classes are by default implemented using this new ASP.NET MVC source refresh drop. <br /> <br />With the ASP.NET MVC Preview 2 release the above HomeController action methods would have instead been implemented like below:<span style="font-family:arial;font-size:85%;"><p><img src="http://www.scottgu.com/blogposts/aprilmvc/step5.png" /> </p></span> <br /> <br />The MVC feature team is experimenting with a few ideas in this week's drop and are trying out some new ideas: <br /> <br /> 1. <br /> <br /> Action methods on Controllers now by default return an "ActionResult" object (instead of void). This ActionResult object indicates the result from an action (a view to render, a URL to redirect to, another action/route to execute, etc). <br /> 2. <br /> <br /> The RenderView(), RedirectToAction(), and Redirect() helper methods on the Controller base class now return typed ActionResult objects (which you can further manipulate or return back from action methods). <br /> 3. <br /> <br /> The RenderView() helper method can now be called without having to explicitly pass in the name of the view template to render. When you omit the template name the RenderView() method will by default use the name of the action method as the name of the view template to render. So calling "RenderView()" with no parameters inside the "About()" action method is now the same as explicitly writing "RenderView('About')". <br /> <br />It is pretty easy to update existing Controller classes built with Preview 2 to use this new pattern (just change void to ActionResult and add a return statement in front of any RenderView or RedirectToAction helper method calls). <br />Returning ActionResult Objects from Action Methods <br /> <br />So why change Controller action methods to return ActionResult objects by default instead of returning void? A number of other popular Web-MVC frameworks use the return object approach (including Django, Tapestry and others), and we found for ASP.NET MVC that it brought a few nice benefits: <br /> <br /> 1. <br /> <br /> It enables much cleaner and easier unit testing support for Controllers. You no longer have to mock out methods on the Response object or ViewEngine objects in order to unit test the response behavior of action methods. Instead, you can simply assert conditions using the ActionResult object returned from calling the Action method within your unit test (see next section below). <br /> 2. <br /> <br /> It can make Controller logic flow intentions a little clearer and more explicit in scenarios where there might be two different outcomes depending on some condition (for example: redirect if condition A is true, otherwise render a view template it is false). This can make non-trivial controller action method code easier to read and follow. <br /> 3. <br /> <br /> It enables some nice composition scenarios where a FilterActionAttribute can take the result of an action method and modify/transform it before executing it. For example: a "Browse" action on a ProductCatalog controller might return an RenderActionResult that indicates it wants to render a "List" view of products. A FilterActionAttribute declaratively set on the controller class could then have a chance to customize the specific "List" view template rendered to be either List-html.aspx or List-xml.aspx depending on the preferred MIME type of the client. Multiple FilterActionAttributes can also optionally be chained together to flow the results from one to another. <br /> 4. <br /> <br /> It provides a nice extensibility mechanism for people (including ourselves) to add additional features in the future. New ActionResult types can be easily created by sub-classing the ActionResult base class and overriding the "ExecuteResult" method. It would be easy to create a "RenderFile()" helper method, for example, that a developer writing an action could call to return a new "FileActionResult" object. <br /> 5. <br /> <br /> It will enable some nice Asynchronous execution scenarios in the future. Action methods will be able to return an AsyncActionResult object which indicates that they are waiting on a network operation and want to yield back the worker thread so that ASP.NET can use it to execute another request until the network call completes. This will enable developers to avoid blocking threads on a server, and support very efficient and scalable code. <br /> <br />One of the goals with this interim preview is to give people a chance to play around with this new approach and do real-world app-building and learning with it. <br /> <br />We will also post an alternative Controller base class sample that you can use if you still prefer the previous "void" action return approach. We deliberately didn't include this alternative Controller base class in this source refresh drop, though, because we want to encourage folks to give the "ActionResult" return approach a try and send us their app-building feedback on it. <br />How To Unit Test Controller Action Methods <br /> <br />I mentioned above that the new ActionResult approach can make unit testing controllers much easier (and avoid the need to use mocking for common scenarios). Let's walk through an example of this in action. <br /> <br />Consider the simple NumberController class below: <br /> <br />This Controller class has an "IsEvenNumber" action method that takes a number as a URL argument. The IsEvenNumber action method first checks whether the number is negative - in which case it redirects the user to an error page. If it is a positive number it determines whether the number is even or odd, and renders a view template that displays an appropriate message: <br /> <br />Writing unit tests for our "IsEvenNumber" action method is pretty easy thanks to the new ActionResult approach. <br /> <br />Below is an example unit test that verifies that the correct Http redirect occurs when a negative number is supplied (for example: /Number/IsEvenNumber/-1): <br /> <br />Notice above how we did not need to mock any objects to test our action method. Instead we simply instantiated the NumberController class and called the action method directly (passing in a negative number) and assigned the return value to a local "result" variable. I used the C# "as type" syntax above to cast the "result" variable as a strongly typed "HttpRedirectResult" type. <br /> <br />What is nice about the C# "as" keyword is that it will assign the value as null instead of throwing an exception if the cast fails (for example: if the action method returned a RenderViewResult instead). This means I can easily add an assertion check in my test to verify that the result is not null in order to verify that an Http redirect happened. I can then add a second assertion check to verify that the correct redirect URL was specified. <br /> <br />Testing the scenarios where non-zero numbers are passed in is also easy. To do this we'll create two test methods - one testing even numbers and one testing odd numbers. In both tests we'll assert that a RenderViewResult was returned, and then verify that the correct "Message" string was passed within the ViewData associated with the view: <br /> <br />We can then right click on our NumberControllerTest class inside VS 2008 and choose the "Run Tests" menu item: <br /> <br />This will execute our three unit tests in-memory (no web-server required) and report back on whether our NumberController.IsEvenNumber() action method is performing the right behavior: <br /> <br />Note: with this week's source drop you still need to use mocking to test the TempData property on Controllers. Our plan is to not require mocking to test this with the ASP.NET MVC Preview 3 drop in a few weeks. <br />MapRoute Helper Method <br /> <br />URL routing rules within ASP.NET MVC applications are typically declared within the "RegisterRoutes" method of the Global.asax class. <br /> <br />With ASP.NET MVC Previews 1 and 2 routes were added to the routes collection by instantiating a Route object directly, wiring it up to a MvcRouteHandler class, and then by setting the appropriate properties on it to declare the route rules: <br /> <br />The above code will continue to work going forward. However, you can also now take advantage of the new "MapRoute" helper method which provides a much simpler syntax to-do the same thing. Below is the convention-based URL route configured by default when you create a new ASP.NET MVC project (which replaces the code above): <br /> <br />The MapRoute() helper method is overloaded and takes two, three or four parameters (route name, URL syntax, URL parameter default, and URL parameter regular expression constraints). <br /> <br />You can call MapRoute() as many times as you want to register multiple named routes in the system. For example, in addition to the default convention rule, we could add a "Products-Browse" named routing rule like below: <br /> <br />We can then refer to this "Products-Browse" rule explicitly within our Controllers and Views when we want to generate a URL to it. For example, we could use the Html.RouteLink view helper to indicate that we want to link to our "Products-Browse" route and pass it a "Food" category parameter using code in our view template like below: <br /> <br />This view helper would then access the routing system and output an appropriate HTML hyperlink URL like below (note: how it did automatic parameter substitution of the category parameter into the URL using the route rule): <br /> <br />Note: with this week's source drop you need to pass-in the controller and action parameters (in addition to the Category param) to the Html.RouteLink() helper to resolve the correct route URL to generate. The ASP.NET MVC Preview 3 drop in a few weeks will not require this, and allow you to use the Html.RouteLink call exactly as I've written it above to resolve the route. <br /> <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/aspnet-mvc-source-refresh-preview.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/aspnet-mvc-source-refresh-preview.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-30T22:51:00-07:00'>10:51 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/5148852180113826410' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=5148852180113826410&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='http://content-ind.cricinfo.com/inline/content/image/353040.jpg?alt=2' itemprop='image_url'/> <meta content='453893733984747222' itemprop='blogId'/> <meta content='3560503683918747819' itemprop='postId'/> <a name='3560503683918747819'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/australia-vs-west-indies-livepontings.html'>Australia vs West Indies Live!/Ponting’s genius ignores numbers game</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-3560503683918747819' itemprop='description articleBody'> <p class="news-subheading">West Indies v Australia, 2nd Test, Antigua, 1st day</p> <p class="news-title">Ponting's genius ignores numbers game</p> <p class="news-author"><br /></p> <p class="news-date"><br /></p> <p class="news-body"> </p><table class="pullquote" style="margin-top: 5px;" align="right" border="0" cellpadding="0" cellspacing="0" width="320"> <tbody><tr> <td colspan="2" height="5"><br /></td> </tr> <tr><td height="1" width="10"><br /></td> <td class="photo"> <img align="top" alt="" border="1" hspace="1" src="http://content-ind.cricinfo.com/inline/content/image/353040.jpg?alt=2" vspace="2" width="310" /><br /> <table border="0" cellpadding="2" cellspacing="2"> <tbody><tr> <td class="photo"> Ricky Ponting's 65 pushed him into the most elite group of Test run-scorers <nobr><span class="photo-copyright">© Getty Images</span></nobr><br /> </td></tr></tbody></table> </td></tr><tr> <td colspan="2"> </td> </tr> </tbody></table> <p class="news-body"> Records seem easiest for the people who are the least concerned about them as thoughts of milestones don't sit annoyingly and teasingly in their minds. Years ago it seemed unbelievable that Ricky Ponting didn't know how highly history rated some of his deeds. </p><p class="news-body"> Whenever he walked in after play to discuss his latest hundred and was told of the great name he had just passed for runs or centuries, he'd look straight back and say: "I've never been one for stats." Usually he didn't know about the mark until one of the support staff had told him. It happened so often it had to be true. A man who has been ribbed by his team-mates for reading the Sydney grade cricket scores never knew when he was about to pass Waugh, Gavaskar or Bradman. </p><p class="news-body"> At the start of his career Steve Waugh was playing under the coach Bob Simpson, who would alert the players to any new milestones they had achieved. Under Waugh's captaincy history became a strong influence, pushing the team to smash records instead of breaking them. During the reign Australia achieved 16 wins in a row, Matthew Hayden raised a then-best 380 and Waugh finished his career in second on the list of Test run-makers with 10,927. </p><p class="news-body">The sense of numerical occasion didn't pass to Ponting. Calculations don't bother him as much as winning or spending a long time in the game. And in cricket there is always someone who is better - or more compulsive - with statistics. So the only reason Ponting knew he needed 61 runs in Antigua to reach what was once the fairytale of batting achievements was because one of the extended squad members had mentioned it. </p><p class="news-body"> When Ponting started his Test career only Allan Border and Sunil Gavaskar had reached five figures and 10,000 carried a magical quality. It was such a big deal to Border that in the same year he got there, with a single to mid-on off Carl Hooper at the SCG, he released his <i>Beyond Ten Thousand</i> autobiography. </p><p class="news-body"> Batsmen didn't get that far by mistake or by merely being good. Longevity was essential - Border and Gavaskar both played for 16 years - but so was regular, heavy run-scoring. Averaging more than 50 was a must. Ponting has done both in becoming the seventh player to the number. </p><p class="news-body"> He began with <a href="http://content-ind.cricinfo.com/statsguru/engine/match/63706.html">96 on debut</a> in Perth in 1995 and it took 13 years and another 117 matches to join the group. A two to cover from Ramnaresh Sarwan's occasional legspin lifted him out of the 9000s, but there was little fanfare. While Ponting said at stumps it was a nice milestone, he is happy letting everybody else make the fuss. </p><p class="news-body">Ponting is more proud of the many years he has spent in the national side, but in the quiet of his room the size of numbers must make him smile. In his public world, and in a team sense, Simon Katich's unbeaten 113 was more important than the captain's 65 on the opening day. Without Matthew Hayden, Australia needed a solid contribution and Katich provided it, allowing Ponting to leave for the hotel pleased with the side's position. </p><p class="news-body">Despite Katich working impressively on his first century since 2005, his innings will be overlooked by those outside the squad. Ponting, the newest 10,000 man, is now standing at an altitude reached only by the super elite. </p><p class="news-body"><i><br /></i></p> <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/australia-vs-west-indies-livepontings.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/australia-vs-west-indies-livepontings.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-30T22:35:00-07:00'>10:35 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/3560503683918747819' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=3560503683918747819&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='8051888283419491776' itemprop='postId'/> <a name='8051888283419491776'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/let-s-compare-affiliate-marketing-with.html'>Let 's Compare Affiliate Marketing with Network Marketing</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-8051888283419491776' itemprop='description articleBody'> Affiliate marketing and network marketing are two different terms. This article I found explains the differences between the two terms-<br /><br />Affiliate marketing, Multi-Level Marketing networks, network marketing, multi-tier affiliate marketing, and others. If you are totally confused about the differences between them, then after reading this article, you have a much better understanding of what each means and which one is the best one for your business.<br /><br />A lot of people question if they be involved with affiliate marketing or network marketing. Of course, an affiliate marketer will most likely convince you that their type of marketing is the best way to go. However, If you ask a network marketer, he will tell you that theirs is the best option to consider of the two. Both programs have their advantages and disadvantages, but both of them can make you wealthier.<br /><br />Let 's discuss affiliate marketing first. This type of marketing requires selling products or services for someone else, and as a result , you would get some commission from each sale. The commission will often vary with each company you are selling for. In most cases, all you need to do is promote or advertise their particular product and your responsibility ends. Generally the owner of the product handles the shipping procedure, customer service and other similar services. Therefore you only have to worry about selling the product.<br /><br />Network marketing is a little different. With network marketing, you make money both on the sales that you make directly, but you also get paid when the people below you sell something. In this type of arrangement, the number of levels differs from company to company. The thought of making money on other people 's work most certainly appeals to many. This explains why network marketing is such a popular business.<br /><br />Up to this point it may seem that network marketing is sounds better than affiliate marketing. On the contrary however, when you look at the actual profit being made in both the cases, you will most likely find that it varies considerably. Typically profits are quite high when involved in affiliate sales.<br /><br />If you plan to make your network marketing successful, you would be required to do many more things, not just sell the product. You can only be profitable if you consistently motivate the people working below your level to make sales. In addition, you must teach them how to help the people under their level sell more. Therefore, your roll your involved in network marketing is to be a salesperson, teacher, as well as a motivator. So if you enjoy teaching, working with people, and inspiring them then network marketing is probably your area of interest.<br /><br />Affiliate marketing, unlike network marketing, will not depend on your ability to sway friends and family to invest their money by joining levels under you. You don't want to worry about having to motivate or teach other people how to make sales, so this might be a better choice for you. With affiliate marketing you would need only to concern yourself with what YOU would have to do to make money and how to motivate yourself. <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/let-s-compare-affiliate-marketing-with.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/let-s-compare-affiliate-marketing-with.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-30T04:57:00-07:00'>4:57 AM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/8051888283419491776' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=8051888283419491776&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> <div class="date-outer"> <h2 class='date-header'><span>Tuesday, May 27, 2008</span></h2> <div class="date-posts"> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='9090539823612038362' itemprop='postId'/> <a name='9090539823612038362'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/crm-from-sap-selected-by-bayer-division.html'>CRM from SAP Selected by Bayer Division, MaterialScience</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-9090539823612038362' itemprop='description articleBody'> <h3>CRM from SAP Selected by Bayer Division, MaterialScience</h3> <span class="meta"></span><span style="display: none;" id="content_tags">CRM Software & Technology </span>Some latest news on SAP's CRM software packages getting selected by large companies. Read selected extracts-<br /><br />19 May 2008:<br /><br />SAP (News - Alert) AG has announced that Bayer MaterialScience, a division of Bayer AG and a producer of plastics, has selected the latest version of the SAP Customer Relationship Management (SAP CRM) application, SAP CRM 2007.<br /><br /><br />The "simplicity of the user interface" and general value of an integrated business process platform were factors that led to the selection, Bayer MaterialScience officials say. The announcement was made at Sapphire 2008, SAP's customer conference in Berlin.<br /><br />As part of an initiative to "modernize its technology landscape," Bayer officials say, Bayer MaterialScience is currently replacing outdated legacy systems with standardized software. The company will integrate the SAP CRM application into its existing SAP Business Suite family of business applications.<br /><br />Currently, the software is being piloted in a three-month project, and will be rolled out to employees worldwide.<br /><br />Kurt De Ruwe, CIO, Bayer MaterialScience, said after a roll out to approximately 2,500 users throughout the company "800 will access SAP CRM directly from their mobile devices."<br /><br />The latest version of SAP CRM was launched in December 2007. Approximately 250 customers are currently using it, SAP officials say.<br /><br />Earlier this month Ballance Agri-Nutrients, a New Zealand fertilizer manufacturer and distributor, selected SAP to provide enterprise applications to replace its legacy system. The deal includes SAP ERP, Supply Chain Management (SCM), and Customer Relationship Management (CRM) <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/crm-from-sap-selected-by-bayer-division.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/crm-from-sap-selected-by-bayer-division.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-27T22:55:00-07:00'>10:55 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/9090539823612038362' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=9090539823612038362&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> <div class="date-outer"> <h2 class='date-header'><span>Saturday, May 24, 2008</span></h2> <div class="date-posts"> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='1997917019211840286' itemprop='postId'/> <a name='1997917019211840286'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/new-way-to-measure-blog-influence.html'>A New Way to Measure Blog Influence: Search Term Alignment</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-1997917019211840286' itemprop='description articleBody'> Hey PR people! Want to get bloggers to write about you or your products? Please, please, for all concerned — tear up your Technorati Top 100 list and start over. For most companies, 99 percent of overtures made to the “A” list bloggers will at best be ignored, and at worst could result in <a href="http://blogbusinesssummit.com/2006/09/another_story_o.htm">negative coverage.</a><br />We believe the best bet is to find approachable bloggers with the right topical alignment. The nice thing is that if you are topically aligned to a significant degree, even a relatively popular blogger can find your message of interest.<br />The key thing is to create a win-win scenario where the blogger being approached is actually glad to hear from you, and you know that if they write about you, someone will actually read it. We think a good way to do this is to find bloggers who are writing about things your customers are interested in, and have aligned posts that are prominent in search.<br />The main thing to recognize is that significant and <a href="http://searchengineoptimism.com/Google_refers_70_percent.html">growing numbers of shoppers</a> begin their buying process in a search engine. Anyone with a retail site can attest to the fact that their server logs show the bulk of their traffic is coming from search. Blog posts are featured prominently in results your customers are finding, and these are the bloggers to engage. Robert Scoble wrote recently that despite Twitter and Facebook it’s still <a href="http://scobleizer.com/2008/05/02/how-late-adopters-get-into-social-media/">“a Google world” </a>and we couldn’t agree more.<br />Here’s an example of how search term analysis can provide a numerical index of alignment with a company.<br />Let’s look at two bloggers that are not on the Technorati 100 and how they align with two very different companies.<br />Let’s start with <a href="http://www.web-strategist.com/blog/">Jeremiah Owyang.</a> He wrote a bit about influence today. Buzzlogic, a company perhaps using the old-world(?) “inbound-links-as-power” metaphor was <a href="http://www.web-strategist.com/blog/2008/05/05/video-buzzlogic-tracks-and-measures-influence/%3Cbr%20/%3E">profiled</a>.<br />Jeremiah places highly (in the top 20) in Google for 7,900 unique search terms. The top 10 individual words used are: media, marketing, web, social, myspace, strategy, community, facebook, companies, and corporate.<br /><a href="http://thomashawk.com/">Thomas Hawk </a>places highly with 8,200 terms, the top ten being: camera, media, digital, windows, player, mce, store, center, connection, photo, and slr.<br />Do these blogs overlap at all? A little. They share 8 popular search terms between them:<br />That’s an alignment of about .1 percent.<br />Let’s look at a couple vendors who are buying Adwords search terms.<br /><a href="http://www.awarenessnetworks.com/home/">Awareness Networks </a>provides social networks to the enterprise. They’ve purchased 1,270 search terms. How many align with Thomas Hawk’s organic keywords? Zero. How many align with Jeremiah? 64. That’s an alignment of 5.04% Here those terms are:<br /><a href="http://www.digital-slr-guide.com/">Digital SLR Guide</a> teaches consumers how to buy and use digital SLR cameras. They’ve bought 708 search terms. How many align with Jeremiah? Zero. How many align with Thomas Hawk? 50. That’s an alignment of 7.06%. Here are the overlapping terms:<br />Our sense is that the terms we see here are compelling, and that alignment numbers (purchased terms/blogger organic terms) indicates both strength of “influence” (highly ranked organic terms) and topicality (shared terms).<br />We’re now starting to use search term analysis in an organized way to both measure influence and to do the needed “matchmaking” between clients and bloggers. Eager to hear what readers think. <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/new-way-to-measure-blog-influence.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/new-way-to-measure-blog-influence.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-24T23:12:00-07:00'>11:12 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/1997917019211840286' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=1997917019211840286&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='2312728527995481218' itemprop='postId'/> <a name='2312728527995481218'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club_24.html'>Talking About Blogging at Rainier Club Tuesday Night</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-2312728527995481218' itemprop='description articleBody'> I’ve been asked to talk about blogging and how it relates to business at the <a href="http://www.therainierclub.com/">Rainier Club</a> in Seattle on May 12, if you’re a member and plan on attending. Let me know what questions you have ahead of time and I’ll tailor my presentation. <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club_24.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club_24.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-24T23:05:00-07:00'>11:05 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/2312728527995481218' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=2312728527995481218&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='8324428185571698238' itemprop='postId'/> <a name='8324428185571698238'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club.html'>Talking About Blogging at Rainier Club Tuesday Night</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-8324428185571698238' itemprop='description articleBody'> I’ve been asked to talk about blogging and how it relates to business at the <a href="http://www.therainierclub.com/">Rainier Club</a> in Seattle on May 12, if you’re a member and plan on attending. Let me know what questions you have ahead of time and I’ll tailor my presentation. <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-24T23:05:00-07:00'>11:05 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/8324428185571698238' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=8324428185571698238&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> <div class='post-outer'> <div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'> <meta content='453893733984747222' itemprop='blogId'/> <meta content='1810605896836763664' itemprop='postId'/> <a name='1810605896836763664'></a> <h3 class='post-title entry-title' itemprop='name'> <a href='http://abhinavk365.blogspot.com/2008/05/new-theme-system.html'>The New Theme System</a> </h3> <div class='post-header'> <div class='post-header-line-1'></div> </div> <div class='post-body entry-content' id='post-body-1810605896836763664' itemprop='description articleBody'> WordPress 1.3 will enable you to use Themes to design and style your weblog. Work on this feature has been in progress for quite some time now. <a href="http://wordpress.org/pipermail/cvs_wordpress.org/2004-September/000375.html">Work started back in September</a>. Now the shape of things to come seems clear.<br />The next version of WordPress will have support for user-defined themes built in. Until now, WordPress used index.php and the comments-files in conjunction with a CSS stylesheet, to control the way it presented the content when published. All other pages, including the category and archive pages were actually generated by passing parameters to the index.php page. The introduction of the theme system does not mean that the old method of styling papges will not work. If you are upgrading from v1.2 or v1.2.1, users have the liberty to continue using their existing design, without switching to the new system. The new Theme system will provide a method for you to define different physical (.php) files for the different components of your weblog. Let us call each of the different physical *.php files a template. So, with the new theme system, you can define different templates for the category archives, the monthly archives, the individual-entry pages etc.<br />If, as a designer, WordPress user, or developer, you want to get a head start in creating themes, please visit the <a href="http://codex.wordpress.org/Theme_Development">Theme Development</a> page at the wiki. Now would be a good time to bring any concerns or suggestions you may have regarding the Theme System. You can leave comments at the <a href="http://codex.wordpress.org/Talk:Theme_Development">Theme Development Discussion Page</a>, or discuss it in the <a href="http://wordpress.org/mailman/listinfo/hackers_wordpress.org">hackers mailing list</a> or the <a href="http://wordpress.org/support/6">beta discussion forum</a>. <div style='clear: both;'></div> </div> <div class='post-footer'> <div class='post-footer-line post-footer-line-1'> <span class='post-author vcard'> Posted by <span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://www.blogger.com/profile/06211630762979334006' itemprop='url'/> <a class='g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' title='author profile'> <span itemprop='name'>abhinav</span> </a> </span> </span> <span class='post-timestamp'> at <meta content='http://abhinavk365.blogspot.com/2008/05/new-theme-system.html' itemprop='url'/> <a class='timestamp-link' href='http://abhinavk365.blogspot.com/2008/05/new-theme-system.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2008-05-24T22:51:00-07:00'>10:51 PM</abbr></a> </span> <span class='post-comment-link'> <a class='comment-link' href='https://www.blogger.com/comment/fullpage/post/453893733984747222/1810605896836763664' onclick=''> No comments: </a> </span> <span class='post-icons'> <span class='item-control blog-admin pid-1675921659'> <a href='https://www.blogger.com/post-edit.g?blogID=453893733984747222&postID=1810605896836763664&from=pencil' title='Edit Post'> <img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/> </a> </span> </span> <div class='post-share-buttons goog-inline-block'> </div> </div> <div class='post-footer-line post-footer-line-2'> <span class='post-labels'> </span> </div> <div class='post-footer-line post-footer-line-3'> <span class='post-location'> </span> </div> </div> </div> </div> </div></div> </div> <div class='blog-pager' id='blog-pager'> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='http://abhinavk365.blogspot.com/' id='Blog1_blog-pager-newer-link' title='Newer Posts'>Newer Posts</a> </span> <a class='home-link' href='http://abhinavk365.blogspot.com/'>Home</a> </div> <div class='clear'></div> <div class='blog-feeds'> <div class='feed-links'> Subscribe to: <a class='feed-link' href='http://abhinavk365.blogspot.com/feeds/posts/default' target='_blank' type='application/atom+xml'>Posts (Atom)</a> </div> </div> </div></div> </div> <div id='sidebar-wrapper'> <div class='sidebar section' id='sidebar'><div class='widget HTML' data-version='1' id='HTML15'> <h2 class='title'>Chttika</h2> <div class='widget-content'> <!-- You will NOT be able to see the ad on your site! This unit is hidden on your page, and will only display to your search engine traffic (from US and CA). To preview, paste the code up on your site, then add #chitikatest=mortgage to the end of your URL in your browser's address bar. Example: www.yourwebsite.com#chitikatest=mortgage. This will show you what the ad would look like to a user who is interested in "mortgages." --> <script type="text/javascript"><!-- ch_client = "abhinavk365"; ch_type = "mpu"; ch_width = 120; ch_height = 600; ch_color_bg = "65FFFF"; ch_color_title = "7B37FF"; ch_color_text = "E93733"; ch_non_contextual = 4; ch_vertical ="premium"; ch_sid = "Chitika Premium"; var ch_queries = new Array( ); var ch_selected=Math.floor((Math.random()*ch_queries.length)); if ( ch_selected < ch_queries.length ) { ch_query = ch_queries[ch_selected]; } //--></script> <script src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML16'> <h2 class='title'>shooping ads cpc</h2> <div class='widget-content'> <script type="text/javascript"><!-- shoppingads_ad_client = "b3786bb8494af945c43b"; shoppingads_ad_campaign = "default"; shoppingads_ad_width = "300"; shoppingads_ad_height = "250"; shoppingads_ad_kw = "CPC"; shoppingads_color_border = "FFFFFF"; shoppingads_color_bg = "FFFFFF"; shoppingads_color_heading = "00A0E2"; shoppingads_color_text = "000000"; shoppingads_color_link = "008000"; shoppingads_attitude = "true"; shoppingads_options = "n"; --></script> <script src="http://ads.shoppingads.com/pagead/show_sa_ads.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML14'> <div class='widget-content'> <!-- START CUSTOM WIDGETBUCKS CODE --><div><script></script></div> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML12'> <h2 class='title'>get paid for clicks on shooping ads</h2> <div class='widget-content'> <script type="text/javascript"><!-- shoppingads_ad_client = "b3786bb8494af945c43b"; shoppingads_ad_campaign = "default"; shoppingads_ad_width = "300"; shoppingads_ad_height = "250"; shoppingads_ad_kw = "most_popular"; shoppingads_color_border = "FFFFFF"; shoppingads_color_bg = "FFFFFF"; shoppingads_color_heading = "00A0E2"; shoppingads_color_text = "000000"; shoppingads_color_link = "008000"; shoppingads_attitude = "true"; shoppingads_options = "n"; --></script> <script src="http://ads.shoppingads.com/pagead/show_sa_ads.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML10'> <h2 class='title'>referal program sponser review</h2> <div class='widget-content'> <a href="http://www.sponsoredreviews.com/index.asp?PageAction=NewAccount&aid=27261">Buy Reviews</a> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML9'> <h2 class='title'>Sell Links On Your Site;www.linkworth.com</h2> <div class='widget-content'> <table border="0" width="200" cellpadding="2" cellspacing="0" bgcolor="#FFFFFF"> <tr class="affStatsHead"> <td><b>Sell Links On Your Site</b></td> </tr> <tr> <td> <script language="javascript" type="text/javascript"> <!-- function generateLwHyperlink() { var x = 'www'; var y = 'linkworth'; var z = 'com'; document.write('<a href=\"http:\/\/' + x + '.' + y + '.' + z + '?a=13140\" target=\"_blank\">www.linkworth.com</a><br/>LinkWorth connects webmasters with advertisers that want to pay money for link placement.'); } generateLwHyperlink(); // --> </script> </td> </tr> </table> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML8'> <h2 class='title'>sell link on your site and get paid</h2> <div class='widget-content'> <table border="0" width="200" cellpadding="2" cellspacing="0" bgcolor="#FFFFFF"> <tr class="affStatsHead"> <td><b>Sell Links On Your Site</b></td> </tr> <tr> <td> <script language="javascript" type="text/javascript"> <!-- function generateLwHyperlink() { var x = 'www'; var y = 'linkworth'; var z = 'com'; document.write('<a href=\"http:\/\/' + x + '.' + y + '.' + z + '?a=13140\" target=\"_blank\">www.linkworth.com</a><br/>LinkWorth connects webmasters with advertisers that want to pay money for link placement.'); } generateLwHyperlink(); // --> </script> </td> </tr> </table> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML7'> <h2 class='title'>linkworth referal link and earn 50$</h2> <div class='widget-content'> <script language="javascript" type="text/javascript"> <!-- function generateLwHyperlink() { var x = 'www'; var y = 'linkworth'; var z = 'com'; document.write('<a href=\"http:\/\/' + x + '.' + y + '.' + z + '?a=13140\" target=\"_blank\">SEO</a> - create one way text link ads to your website for top search engine listings.'); } generateLwHyperlink(); // --> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML6'> <h2 class='title'>bitadvertiser pay per click</h2> <div class='widget-content'> <script language="JavaScript1.1" src="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=142032&bid=344020"></script> <noscript><a href="http://www.bidvertiser.com">pay per click</a></noscript> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML5'> <h2 class='title'>Bitadvertiser pay per click</h2> <div class='widget-content'> <script language="JavaScript1.1" src="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=142032&bid=344020"></script> <noscript><a href="http://www.bidvertiser.com">pay per click</a></noscript> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML3'> <h2 class='title'>Adbrite</h2> <div class='widget-content'> <!-- Begin: AdBrite --> <script type="text/javascript"> var AdBrite_Title_Color = '0000FF'; var AdBrite_Text_Color = '000000'; var AdBrite_Background_Color = 'FFFFFF'; var AdBrite_Border_Color = 'CCCCCC'; var AdBrite_URL_Color = '008000'; </script> <script src="http://ads.adbrite.com/mb/text_group.php?sid=700187&zs=3330305f323530" type="text/javascript"></script> <div><a style="font-weight:bold;font-family:Arial;font-size:13px;" target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=700187&afsid=1">Your Ad Here</a></div> <!-- End: AdBrite --> </div> <div class='clear'></div> </div><div class='widget BlogArchive' data-version='1' id='BlogArchive1'> <h2>Blog Archive</h2> <div class='widget-content'> <div id='ArchiveList'> <div id='BlogArchive1_ArchiveList'> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='http://abhinavk365.blogspot.com/2008/'> 2008 </a> <span class='post-count' dir='ltr'>(19)</span> <ul class='hierarchy'> <li class='archivedate expanded'> <a class='toggle' href='javascript:void(0)'> <span class='zippy toggle-open'> ▼  </span> </a> <a class='post-count-link' href='http://abhinavk365.blogspot.com/2008/06/'> June </a> <span class='post-count' dir='ltr'>(11)</span> <ul class='posts'> <li><a href='http://abhinavk365.blogspot.com/2008/06/how-to-attract-software-developers-that.html'>How to Attract Software Developers that Fit Your C...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/automated-software-development_08.html'>Automated Software Development Monitoring Helps Cr...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/automated-software-development.html'>Automated Software Development Monitoring Helps Cr...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/microsoft-net-framework.html'>The Microsoft .NET Framework</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/how-to-update-id3-tag-information.html'>How to update ID3 tag Information directly from Wi...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/3g-iphone-live-blog-at-wwdc-2008-steve.html'>3G iPhone Live Blog at WWDC 2008: Steve Jobs Keyno...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/method-to-create-email-template-for.html'>method to Create an Email Template for Cash Crusad...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/in-latest-customer-service-rankings.html'>in latest customer service rankings multichannel ...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/there-are-five-steps-to-becomming.html'>there are five steps to becomming a better codder</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/future-of-internet-grid.html'>Future of Internet-The Grid</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/06/adsense-for-rss-feeds-coming-soon.html'>AdSense for RSS Feeds - Coming Soon.</a></li> </ul> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <a class='toggle' href='javascript:void(0)'> <span class='zippy'> ►  </span> </a> <a class='post-count-link' href='http://abhinavk365.blogspot.com/2008/05/'> May </a> <span class='post-count' dir='ltr'>(8)</span> <ul class='posts'> <li><a href='http://abhinavk365.blogspot.com/2008/05/aspnet-mvc-source-refresh-preview.html'>ASP.NET MVC Source Refresh Preview</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/australia-vs-west-indies-livepontings.html'>Australia vs West Indies Live!/Ponting’s genius ig...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/let-s-compare-affiliate-marketing-with.html'>Let 's Compare Affiliate Marketing with Network Ma...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/crm-from-sap-selected-by-bayer-division.html'>CRM from SAP Selected by Bayer Division, MaterialS...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/new-way-to-measure-blog-influence.html'>A New Way to Measure Blog Influence: Search Term A...</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club_24.html'>Talking About Blogging at Rainier Club Tuesday Night</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/talking-about-blogging-at-rainier-club.html'>Talking About Blogging at Rainier Club Tuesday Night</a></li> <li><a href='http://abhinavk365.blogspot.com/2008/05/new-theme-system.html'>The New Theme System</a></li> </ul> </li> </ul> </li> </ul> </div> </div> <div class='clear'></div> </div> </div><div class='widget Profile' data-version='1' id='Profile1'> <h2>About Me</h2> <div class='widget-content'> <dl class='profile-datablock'> <dt class='profile-data'> <a class='profile-name-link g-profile' href='https://www.blogger.com/profile/06211630762979334006' rel='author' style='background-image: url(//www.blogger.com/img/logo-16.png);'> abhinav </a> </dt> </dl> <a class='profile-link' href='https://www.blogger.com/profile/06211630762979334006' rel='author'>View my complete profile</a> <div class='clear'></div> </div> </div></div> </div> <!-- spacer for skins that want sidebar and main to be the same height--> <div class='clear'> </div> </div> <!-- end content-wrapper --> <div id='footer-wrapper'> <div class='footer section' id='footer'><div class='widget HTML' data-version='1' id='HTML11'> <h2 class='title'>shopping ads</h2> <div class='widget-content'> <script type="text/javascript"><!-- shoppingads_ad_client = "b3786bb8494af945c43b"; shoppingads_ad_campaign = "default"; shoppingads_ad_width = "300"; shoppingads_ad_height = "250"; shoppingads_ad_kw = "most popular"; shoppingads_color_border = "FFFFFF"; shoppingads_color_bg = "FFFFFF"; shoppingads_color_heading = "00A0E2"; shoppingads_color_text = "000000"; shoppingads_color_link = "008000"; shoppingads_attitude = "true"; shoppingads_options = "n"; --></script> <script src="http://ads.shoppingads.com/pagead/show_sa_ads.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML4'> <h2 class='title'>Referal programme at adbrite</h2> <div class='widget-content'> <a href="http://www.adbrite.com/mb/landing_both.php?spid=86008&afb=468x60-2"> <img border="0" src="http://files.adbrite.com/mb/images/468x60-2.gif"/></a> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML2'> <h2 class='title'>ppp direct</h2> <div class='widget-content'> <script src="http://tinyurl.com/2b5ojn" type="text/javascript"></script> </div> <div class='clear'></div> </div> <div class='widget HTML' data-version='1' id='HTML1'> <h2 class='title'>Bitadvertiser</h2> <div class='widget-content'> <!-- Begin BidVertiser Referral code --> <script language="JavaScript">var bdv_ref_pid=142032;var bdv_ref_type='i';var bdv_ref_option='p';var bdv_ref_eb='0';var bdv_ref_gif_id='ref_110x32_black_pbl';var bdv_ref_width=110;var bdv_ref_height=32;</script> <script language="JavaScript" src="http://srv.bidvertiser.com/bidvertiser/referral_button.html?pid=142032"></script> <noscript><a href="http://www.bidvertiser.com/bdv/BidVertiser/bdv_advertiser.dbm">pay per click</a></noscript> <!-- End BidVertiser Referral code --> </div> <div class='clear'></div> </div></div> </div> </div></div> <!-- end outer-wrapper --> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/387437488-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AEUoTZoLdUxnLmQsrC8qdWZsfFCB:1780976433953';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d453893733984747222','//abhinavk365.blogspot.com/2008/','453893733984747222'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '453893733984747222', 'title': 'computersandpersonalintersts', 'url': 'http://abhinavk365.blogspot.com/2008/', 'canonicalUrl': 'http://abhinavk365.blogspot.com/2008/', 'homepageUrl': 'http://abhinavk365.blogspot.com/', 'searchUrl': 'http://abhinavk365.blogspot.com/search', 'canonicalHomepageUrl': 'http://abhinavk365.blogspot.com/', 'blogspotFaviconUrl': 'http://abhinavk365.blogspot.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': false, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': true, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'en', 'localeUnderscoreDelimited': 'en', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22computersandpersonalintersts - Atom\x22 href\x3d\x22http://abhinavk365.blogspot.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22computersandpersonalintersts - RSS\x22 href\x3d\x22http://abhinavk365.blogspot.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22computersandpersonalintersts - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/453893733984747222/posts/default\x22 /\x3e\n', 'meTag': '', 'adsenseClientId': 'ca-pub-4031378701648081', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': true, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/ff2fc60a7f0d8424', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Get link', 'key': 'link', 'shareMessage': 'Get link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Share to Facebook', 'target': 'facebook'}, {'name': 'BlogThis!', 'key': 'blogThis', 'shareMessage': 'BlogThis!', 'target': 'blog'}, {'name': 'X', 'key': 'twitter', 'shareMessage': 'Share to X', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Share to Pinterest', 'target': 'pinterest'}, {'name': 'Email', 'key': 'email', 'shareMessage': 'Email', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27en\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Read more', 'pageType': 'archive', 'pageName': '2008', 'pageTitle': 'computersandpersonalintersts: 2008'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Edit', 'linkCopiedToClipboard': 'Link copied to clipboard!', 'ok': 'Ok', 'postLink': 'Post Link'}}, {'name': 'template', 'data': {'isResponsive': false, 'isAlternateRendering': false, 'isCustom': false}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'computersandpersonalintersts', 'description': '', 'url': 'http://abhinavk365.blogspot.com/2008/', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': false, 'isArchive': true, 'isLabelSearch': false, 'archive': {'year': 2008, 'rangeMessage': 'Showing posts from 2008'}}}]); _WidgetManager._RegisterWidget('_NavbarView', new _WidgetInfo('Navbar1', 'navbar', document.getElementById('Navbar1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/1053750561-lbx.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/828616780-lightbox_bundle.css'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML15', 'sidebar', document.getElementById('HTML15'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML16', 'sidebar', document.getElementById('HTML16'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML14', 'sidebar', document.getElementById('HTML14'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML12', 'sidebar', document.getElementById('HTML12'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML10', 'sidebar', document.getElementById('HTML10'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML9', 'sidebar', document.getElementById('HTML9'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML8', 'sidebar', document.getElementById('HTML8'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML7', 'sidebar', document.getElementById('HTML7'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML6', 'sidebar', document.getElementById('HTML6'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML5', 'sidebar', document.getElementById('HTML5'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML3', 'sidebar', document.getElementById('HTML3'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Loading\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_ProfileView', new _WidgetInfo('Profile1', 'sidebar', document.getElementById('Profile1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML11', 'footer', document.getElementById('HTML11'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML4', 'footer', document.getElementById('HTML4'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML2', 'footer', document.getElementById('HTML2'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML1', 'footer', document.getElementById('HTML1'), {}, 'displayModeFull')); </script> </body> </html>