Thursday, December 6, 2007

All time top tech innovations compiled a list of top 100 technology innovations of all times. The list acknowledges the hardware and software innovations that went into making technology the domain that it is today. What is you take on it?

The roster of top 20 innovations from the list is:

    1. USB (1996) - Bought in several concepts such as drawing power, swapping of devices without shutting down PC, and to this day is the killer of port woes.
    2. 3dfx Voodoo 1 (1996) - To put it in brief, this card started the era of separate cards on your motherboard and 3D gaming was born.

Wednesday, December 5, 2007

10 tips for writing a job-winning

As seasoned job hunters know, the first step on the road to finding work is to write a resume that gets you the interview. Unfortunately, some of the traditional resume writing rules just do not work well in the software development industry. Here are 10 tips for writing a programmer resume that will increase your chances of getting the interview.

1. Provide a skills list up front
The hiring manager wants to know if you have the skills the company is looking for. An "experience" section gives managers a good idea of how much experience you have, but if you have a "skills" section at the top of the resume, their eyes go there first. Sure, you may be making it a bit easier for them to weed out your resume. But on the flip side, you might bring to their attention some skills they would otherwise overlook. At the very least, the hiring manager will appreciate the skills list.

2. Make the experience interesting
Most developers on the market have written a data-driven Web site or desktop application. To give a bunch of examples of these on your resume is not impressive. What does impress a potential employer is experience that has something unique about it, showing you've done more than just “Hello World” level work. If you've been working under unique constraints or in environments with high levels of transactions or zero tolerance for failure, that looks very good to the person reading the resume. So show me how your experience is different, and I will see you as different.

3. Root out grammar, spelling, and other common mistakes
Over the course of my time hiring, I have seen all sorts of grammar and spelling mistakes on resumes. One of the most embarrassing was when someone misspelled the name of the college he graduated from. Resumes do contain some unique grammatical conventions, and software development work in particular often revolves around acronyms or oddly spelled words. But that is really no excuse. Check your spelling and your grammar. This tip appears on just about every resume advice article I have ever read, but it clearly needs repeating.

4. Education counts, but not for much
Unless you are just entering the job market for programming or are applying for a very specialized position, your education is not terribly important. Sure, you need to put it on your resume, but list it last, please. The hiring managers who need or want to know about it can find it, and the others won't have to spend time on it. The world of programming changes often enough so that somewhere around seven years later, most schooling (except for “principles and theory” subjects, like mathematics or “pure” computer science) and certifications have little in common with the current working world reality.

5. Get to the meat, quick
The traditional resume format includes a lot of information that's just not needed, in the mind of the development manager. Your summary and possibly even the objective are two such sections. There really is no way to provide a summary that describes most programming pros in a way that is accurate, yet shorter than a resume itself. This is why most summary sections read like so much useless drivel: “Seasoned programmer with 10 years development,” followed by highlights of the skills section. Thanks, but no thanks.
The objective is often (but not always) just as useless. If you are looking for a change of pace, it offers a great way to keep the reader from pigeonholing you based on your skills and experience. The intermediate programmer looking to slide into a senior developer position can safely skip the objective. The senior programmer who wants to become a software architect or a DBA needs to state an objective. So avoid the summary at all costs, provide only useful objectives, and let the reader get to your skill set as quickly as possible.

6. Formatting matters
The formatting of your resume is important. While the days of mailing resumes printed on premium stationery are long past, it is still a document that someone needs to read on a computer screen and on paper. That can be quite a balancing act, believe it or not. This is not the time to show off your inner Picasso, unless the position you are applying for is of a visually artistic nature. This is the time to enhance readability. That means using a larger font (10 to 12 points), a common font that all computers have (if your document format does not bundle fonts within it), and one that looks good both on the screen and off. My recommendations are Verdana, Arial, Tahoma, Calibri, and Helvetica.
Use enough whitespace so that the document does not seem too dense, which will turn readers off. At the same time, don't waste so much space that it takes eight pages to print 200 words. Of course, the format of the file itself is important. My experience has been that 99.9% of the recruiters out there will ask for your resume in Microsoft Word format if you send it in any other format, so make sure that you can provide a document in the standard .doc format. Always keep in mind that the resume is your primary tool for selling yourself. If readers can't consume the information in it, whether due to technical issues or readability problems, they will quickly move on to the next resume.

7. Be cautious with the length
Regardless of how your document is formatted, try to keep the length between two and four pages, unless there are extremely special circumstances. People who spend a lot of time doing short-term contract work can have longer resumes, and people just entering the job market can have shorter resumes.
Overall, it is tough to properly highlight your technical skills and more than one position in the traditional one-page resume format. Two pages should be the baseline for any intermediate or senior developer. But after about four pages, the reader’s eyes start to glaze over. Much like your education, the experience you had more than seven or eight years ago is not terribly relevant, but the hiring manager does like to see an arc of increasing responsibility or project difficulty.

8. Properly document your history
Programming is not like most fields when it comes to employment history. For one thing, many programmers are contractors, which leads to an employment history that can look like a train. In addition, the dot-com bust is not too far behind us, and IT has always been an industry with a lot of bankruptcies, mergers, and acquisitions.
The problem is, no hiring manager likes to see a long list of short-term jobs. If your resume has a string of such jobs, with job titles that get bigger and bigger, you look like someone who has no loyalty. On the other hand, if the jobs seem basically the same (or worse, get lower on the totem pole), it makes the reader think that you may simply be unemployable. If you have a legitimate reason for the short-term jobs, make sure that the reason is obvious. For example, mark the contracting/consulting positions clearly.

9. Don’t put the reader at legal risk
No hiring manager likes to be accused of prejudiced or discriminatory hiring. Not only is it unethical, but it is illegal. So hiring managers who are trying to do the job right will be familiar with the list of questions they can't ask an applicant. Your part of the equation is to exclude this information from your resume. The hiring manager does not need to know your marital status, ethnicity, nation of origin, age, religion, or sexual orientation. There are a lot of other things the hiring manager does not need to know, either. If you include these irrelevant details on your resume, the hiring manager will feel scared and skittish. Leave these details out, please.

10. "What a geek!"
In high school, you may have hated being called a geek. But today, you are trying to find work as a programmer. “Geek” is “gold” to hiring managers. Find a way to show them that you are smart, love programming, and are constantly growing, learning, and exploring new ideas. Talk about your relevant hobbies if you have any, like contributing to open source projects or volunteering to teach local kids programming. Let them know if you like programming or computers enough to deal with them outside of work.
It is a really simple equation for the hiring manager. While two candidates may be equal today, the candidate with passion will be far more advanced tomorrow than the candidate who treats it as “just a job.”

courtesy @TechRepublic

AddThis Feed Button

Piracy rate for Vista is half that of XP

Microsoft on Monday said that piracy rates for Windows Vista are half those of Windows XP.

There appears to be a variety of reasons for that, chief among them is probably the fact that Vista machines that are not properly activated become useless pretty quickly when they enter into “reduced functionality mode.”

Amazingly, in a significant change, those with non-genuine or non-activated copies of Vista SP1 will still be able to use their systems.

According to CNET

With Service Pack 1, Microsoft is doing away with reduced functionality mode in favor of putting prominent notifications on systems that are not found to be genuine. Non-genuine systems with SP1 will display a warning at start-up that the system is not properly activated.

Users will have the option to “activate now” or “activate later,” though the second option won’t show up for a time. Users will also have their desktop background changed to white and a prominent notification placed in the lower right hand corner saying that the machine is not genuine.

I don’t know about you, but harder to pirate none withstanding, the first thought that comes to my cynical mind goes along the line of “Even the pirates can’t be bothered with Vista!”

And as to why Microsoft is making it easier is probably due to pressure from irate users who are wrongly locked out of their own system due to things like device driver upgrades.

And the final puzzle I shall leave you with is — just how did Microsoft figure out the piracy rate anyway? Via Windows update perhaps?

AddThis Feed Button

Tuesday, December 4, 2007

Build better Web forms with these eight user interface tips

Overview: Web forms are an excellent way to gather and exchange information with your Web site's users, especially when that exchange is part of an e-commerce transaction. However, a Web form that users don't complete is a waste of everyone's time. These eight interface-enhancing tips, originally published in TechRepublic's Design and Usability Tactics newsletter, will help you gain maximum value from your Web forms and the users they serve.

1: Determine the goal and value
Assess what value the outcome of the task will provide to your organization and the user. If there's little or no value, why should you build it, and why should users take the time to fill out the form? Once you determine that both parties would benefit, start thinking about what to put in the Web form.
The key is don't get greedy. Many organizations believe that you must have excessive amounts of information flowing to them from the users. In reality, smaller, more targeted chunks of information are more useful. Also, users don't want to provide more information than they think the organization should have (i.e., don't give the impression that you're prying).
In other words, tread lightly when you consider what you're going to ask users. Ultimately, if your organization can't glean any information from users, not only do you not get any value from the Web form, but you also risk tarnishing the brand image you've worked hard to build.

2: Provide incentives for completion
The user must feel that the value or outcome outweighs the cost (or time) of having to fill out the form. Therefore, unless you provide users with something of value in return, the chances diminish that the user will finish the task.
Incentives can be whatever you're willing to provide. Here are examples of possible incentives:
􀂃 Give away a gift certificate for some of your products in return for the user's contact information.
􀂃 Provide the user a chance for entry into a sweepstakes or other type of contest.
􀂃 Offer a free download of some expert content or information pertinent to the business at hand.
Before even building a Web form, you should determine what you hope to accomplish with the form and then decide what incentive you'll provide to users in order to entice them to complete the form.
Once you pinpoint why the particular Web form is necessary and why users will be willing to fill it out, it's time to focus on constructing a usable online form that virtually anyone can understand, as well as finish.
Even for short forms, we can't just put an input box on the screen with a Sign Up or Register button and expect the user to know what to do. We also cannot assume that users will know what everything means, or exactly where to put their answers. History has shown this is true (think: Florida and the butterfly ballot).

3: Make sure the form requires no scrolling
First, present your Web form in a space on the screen that the user can see without scrolling. This space should be directly within the main content area of your Web site, as it's the primary piece of information on the page.

4: Be upfront about the form's length
Figure out the length of the form. At this stage, the worst mistake you can make is to create a gigantic one-page form. Instead, pre-determine how many questions or inputs you're going to produce, and then break the form into smaller steps.
From the beginning, let the users know how many steps the form will entail, and then continue to show them how far they have to go with each new step in the process.

5: Clearly identify fields, buttons, and boxes
Every field, button, or box must be clearly labeled and associated with its proper function. For instance, use bold to signify the input designations (e.g., First Name), and always display errors using red type. (Do not make the user search for the error.)

6: Use a table layout
To ensure that your form lines up, you should employ a simple HTML table layout. Adjust the cell padding or cell spacing to create space variances between all fields and to adjust to your taste.
For example:

7: Retain pre-filled-in user information
One of the most annoying parts about filling out an online form is experiencing an error, and then seeing that all of the information you previously input has vanished.
Asking a user to completely reenter his or her information is a touchy subject. The best course of action is to make sure your programming team carries the user's information from step-to-step automatically.

8: Give a big thank you
Last but not least, you should provide each user with a confirmation or thank you page upon the completion of each form. This page will offer users a sense of accomplishment and make them feel that you realize their time is important.
By working within these guidelines, you should be able to design Web forms that provide you and your users with enough value to make it worth everyone's while.

AddThis Feed Button

How do I… Create a customized JavaScript jump menu in Dreamweaver CS3?

If you are in charge of maintaining a Web site, one of your recurring tasks is likely accommodating a committee of supervisors or clients that want to add links to the site on a continuing basis. This can often lead to a cluttered navigation interface, if it doesn’t destroy your layout altogether.

Fortunately, Adobe Dreamweaver CS3 has many tools that can provide quick and easy solutions to problems like these. One of the more practical solutions to an ever-expanding list of navigation links is a JavaScript “jump” menu, which is a pull-down form menu that automatically directs the user’s browser to another Web page as soon as they select an option from the menu. And the best part is that no knowledge of advanced scripting techniques is required to implement it. You can even use some simple CSS code to give your Jump menu a distinct look.

If you don’t own a copy of Dreamweaver CS3, you can download a fully functioning 30-day trial.

This blog post is also available as a TechRepublic gallery and TechRepublic download. The download includes an example of the JavaScript described in this How do I… blog post.

Let’s begin by opening Dreamweaver and creating a new HTML document (Figure A) by selecting the New option from the File menu. In the Dialog box that appears, Select HTML in the Page type column. Ignore the other options in the box, and click the “Create” button.

Figure A

Creating a new HTML document in Dreamweaver CS3

Before you do anything else, save your document. It is always a good idea to save a new HTML document in Dreamweaver in the directory that houses your parent Web site before you begin coding. This will help avoid broken and misdirected links later on if you decide to link to internal site pages.

Dreamweaver lets your author a page via its WYSIWYG tools as well as by hand-coding. Its best to have both options visible at all times so that you can switch back and forth and see how modifying the code affects the browser preview and vice-versa. If both the Code and Design view are not visible, click on the button that is labeled “Split”. You will find it in-between the Code and Design buttons near the top of the screen, under the document tab (Figure B).

Figure B

Clicking the Split button lets you see both the Code and Design windows

Now it is time to build our Jump menu. Go to the top of the screen and in the horizontal Insert menu (it runs across the screen just under the Application menus) click on the Forms tab to bring up the Form objects. (Figure C)

Figure C

Select the Forms tab to bring up the Form objects palette

Next, click on the Jump Menu button. This will make a dialog box appear, as in Figure D.

Figure D

Click the Jump Menu button to bring up the Jump Menu authoring box

Let’s have the first item in our Jump Menu take us to The field labeled “Text:” is the text that will appear in the menu when the user views it in his browser. It can be whatever you wish, including most special characters. For now, let’s keep this simple. In the “Text;” field, enter the word Google (Figure E). The field below it, labeled “When selected, go to URL:” is the Web address that will be the destination tied to the copy in the “Text:” field. Enter the URL

Figure E

Creating the first item in the Jump Menu

Next, let’s add two more items to the Jump menu. Click the Add Item button two times and you’ll see the Jump menu add two more blank entries. (Figure F)

Figure F

Adding two blank items to the Jump Menu

Click on item1 in the Menu Items list and fill out the Text and Selected URL fields just as you did before, linking the new item to an absolute URL. Repeat the process again with item2. (Figure G)

Figure G

Linking the two new menu items

Now let’s say that you want to rearrange the order of the items in the menu list. This is easily done with the two arrow buttons in the upper right area of the dialog box. Click on the last entry in the Menu items box to select it. Then click on the up arrow until the last item is now at the top of the list, as in Figure H.

Figure H

Re-ordering the Menu items

When you are satisfied with the content of your Jump Menu, click the OK button to return to Dreamweaver’s main authoring area to see your menu. (Figure I)

Figure I

The newly-created Jump Menu

Before we test it, let’s use some simple CSS code to make the Jump Menu a little more distinguished. Go to the top of the screen and from the Window menu, select the CSS option. The CSS palette will open, as shown in Figure J.

Figure J

The CSS palette

Click on the Add CSS Rule button to bring up the CSS Rule dialog box (Figure K). In the Selector Type options, choose the Tag option. In the Tag pull-down menu, choose the “Select” tag. Finally, click the Radio button at the bottom that is labeled “This document only.”

What these options do is define the appearance of your Jump Menu automatically, so that you do not have to assign a CSS class to the menu later or worry about an external Style sheet. Click OK to continue to the CSS Rule Definition dialog box.

Figure K

The New CSS Rule dialog box

The CSS Rule Definition dialog box will open at the Type Category, From the Font pull-down menu, select the font set “Arial, Helvetica, sans-serif”, then give it a size of 10, as shown in Figure L.

Figure L

Defining Type options for the New CSS Rule

Now select the Background Category and select a light value color, as shown in Figure M.

Figure M

Defining Background options for the New CSS Rule

Click OK to return to Dreamweaver’s authoring area. The styles you defined should be readily viewable in the Jump Menu. (Figure N) Save your document, and then open it up in a Web browser to test it.

Figure N

The completed Jump Menu

There is no limit to the number of items the Jump menu can list, and of course, you can even link it to Web pages within your own Web site. Use the CSS customization to make it fit right in with your site’s unique look and feel.

courtesy @Techrepublic

AddThis Feed Button

Plugging Aptana into an existing Eclipse configuration


To plug Aptana (Milestone 8+) into an existing Eclipse (v3.2) configuration:

  1. From the Help menu in Eclipse, select Software Updates > Find and Install... to open an Install/Update pop-up window (shown below).


  2. On the Install/Update pop-up window, choose the Search for new features to install option, and click the Next button.
  3. Add a new remote site to add the Aptana plug-in:
    1. Click the New Remote Site... button to open a New Update Site pop-up window.
    2. On the New Update Site pop-up window, type Aptana in the site Name text box.
    3. In the URL text box, type the URL for the Aptana update site: (shown below) and click OK.


    4. Click the Finish button to switch to the Updates window.
  4. On the Updates window, check the Aptana box (shown below), and click the Finish button.


  5. On the next screen, check the Aptana box, and click the Next button.
  6. Choose the option to accept the terms of the license agreement, and click the Next button.
  7. Click the Finish button.
  8. Click the Install All button.

Eclipse installs the Aptana plug-in. To finish the installation process, follow the prompts to shut down and re-start Eclipse.

To access all of Aptana's features as they are described in the Aptana documentation, you will need to change your Eclipse Perspective to the Aptana perspective. See Changing your Eclipse Perspective for instructions on how to change your Eclipse Perspective.


AddThis Feed Button

Build Web applications with Aptana Studio

A Web developer’s choice of tools is often driven by the needs of the client and the project, but a developer’s IDE is often a personal matter; after all, they spend the bulk of their time using this tool to build their applications. While .NET developers have limited choices, Web developers have a variety of options. This article focuses on one such offering: Aptana Studio.


Aptana Studio is developed and supported by the California-based company Aptana. The current version 1.0.0 is available as an Eclipse plug-in, as well as two standalone versions:

  • Community Edition: This is a freely available version of the IDE. It provides the core features of the product for building Web applications. It supports editing and debugging of Web applications using HTML, CSS, JavaScript and AJAX. Plug-ins are available for developing PHP and Ruby on Rails code.
  • Professional Edition: This is the commercial version of the IDE with a current price of $99. It includes the features in the Community Edition as well as additional features. Some of the extras include a JSON editor, viewing statistics via a reporting engine, secure FTP, a debugger extension for Internet Explorer, and full support from Aptana.

The edition you choose depends on your project needs and whether you want full product support. I find that the Community Edition meets most of the needs of my Web development projects.

How to get it

The Aptana Web site makes it easy to purchase a license for the Professional Edition of Aptana or download the freely available Community Edition of Aptana. The download is available as an executable or via a compressed file. The current version requires version 1.5 or later of the Java Runtime Environment. Downloads are available for Windows, OS X, and Linux.

Installation of the Aptana Studio IDE is as simple as running the executable or running the setup in the compression file. Once it is installed, you can get a closer look at the IDE and its many features.


The Aptana Studio IDE is based on the Eclipse code base, but it focuses on Web development via JavaScript (vs. Eclipse’s focus on Java). Like the Eclipse IDE, Aptana Studio organizes development work around a project. Once a new project is created, you may add one or more files. The default installation of Aptana Studio supports JavaScript, HTML, CSS, ScriptDoc, XML and plain text as well as others. Plug-ins are available for working with other file types including PHP, Ruby on Rails, Adobe AIR, and iPhone/iPod.

The Aptana Studio IDE includes standard features that most developers expect in their development tool. It provides a powerful interface for building Web applications. The following list provides a peek at some of these features:

  • Code assist: One of the best features of an IDE is the ability to help you with your coding. The code assist feature provides context-sensitive coding help to make sure your code is correct.
  • FTP: The ability to upload and download project files to and from a Web server makes it easy to work with code on a development or production server.
  • AJAX: AJAX development is a core feature of Aptana Studio. The installation includes many JavaScript libraries, such as Adobe Spry, Yahoo! YUI, JQuery, scriptaculous, and Dojo among others. With these libraries installed by default, you can begin coding AJAX applications in no time.
  • Debugging: A key piece of any IDE is a debugger. The freely available Community Edition of Aptana Studio provides a Firefox plug-in for JavaScript development, and the Professional Edition provides the same tool for Internet Explorer. With the debugger, you can easily set breakpoints and watch variables to get a better idea of what the code is actually doing.


Aptana Studio 1.0.0 is available via a dual licensing agreement. The two licenses are open source GNU General Public License (GPL) and the Aptana Public License (APL). The GPL license offers the Aptana IDE free of charge, as long as usage adheres to the terms of the GPL license. The APL license is available for organizations that want to use the product for free and modify, integrate, and distribute it for personal or internal use only, without any redistribution requirements.

An impressive development option

Over the years, the market for Web development tools has exploded. Some of these tools are for particular development platforms like Visual Studio .NET for .NET development, but others like Aptana Studio 1.0.0 target more general Web development using standard technologies as well as others like PHP. I would recommend the IDE to fellow Web developers.

The Aptana Studio IDE allows a developer to easily organize the many disparate files in a Web application. The many features of the IDE allow you to easily build and debug your JavaScript code to ensure proper functionality. It provides all features that I’d expect from an IDE.

courtesy @TechRepublic

AddThis Feed Button

Friday, November 30, 2007

Which certifications are worth your time?

Project management certs in vogue; tech less so, but security, storage certifications have pull

For years, the key to jumpstarting a network professional’s career was getting a Cisco, Microsoft or other technical certification. But now CIOs, IT recruiters and salary specialists say demand is waning for hardware- and software-oriented certifications.

Instead, companies are looking for IT professionals with business-oriented certifications in such areas as project management and Six Sigma (read about how engine maker Cummins has used Six Sigma to slash IT costs by millions), a statistical quality improvement technique that is being adopted by more IT shops.

"The [Project Management Institute] certification is the big one for us," says Jack Harrington, co-founder and principal of Atlantic Associates, a Boston IT staffing firm. "We see some demand for Six Sigma, but not as much as for PMI. If I had one recommendation about professional development for IT employees, it’s to get a PMI certification because it helps develop broad skills that can be applied across technologies and vertical industries."

Most technical certifications are losing value when it comes to salaries, says David Foote, president of Foote Partners, which conducts IT salary surveys nationwide. As part of its regular surveys, Foote tracks 159 certified skills and 156 non-certified skills to see which affect salaries most.

"Networking certifications lost 4.1% of their value in the last year, 9% in the last two years. That’s pretty horrible. That’s even worse than the average loss across all IT certifications," Foote says. "Networking and communications-related non-certified skills gained 2.8% of value in the last year."

Foote says the trend is a big turnabout from recent years.

"Employees with certifications were earning more than non-certified skills for some time," Foote says. "The last time non-certified skills were more valued than certifications was the third quarter of 2001."

Experts agree that some technical certifications are still worth the time and effort. This includes the Cisco Certified Internetwork Expert (CCIE), EMC Technology Architect and storage-area networking certifications from companies such as Brocade.

"In networking, one of the hottest areas is storage-area networking," Foote says. "Companies aren’t demanding certifications for storage-area networking, but they are looking for people who understand storage-area networking and the role it plays in the enterprise."

Security certifications also are in demand, particularly the Certified Information Systems Security Professional (CISSP) and Certified Information Systems Auditor (CISA).

Security is "certainly a hotbed," says Matt Colarusso, branch manager for Sapphire National Recruiting in Woburn, Mass. "Our clients are looking for hands-on technical people who understand firewalls, VPN set-ups and router controls."

Investing in tech certification

Technical certifications remain valuable enough that most CIOs will reimburse their employees for the cost.

Jeff Ton, vice president of enterprise processes, information and technology at Lauth Property Group in Indianapolis, recently began a certification program for his 25-person IT shop.

"For systems engineers and desktop technicians, they see it as a way of personal growth,” Ton says. “We help pay for certifications. If they get the certification, we give them a bonus. We feel it’s important because we value the employee."

Bob Veeneman, director of IT integrated planning with Blue Shield of California, says about 25% of his IT training budget goes toward technical certifications for IT staff.

"We heavily invest in those," Veeneman says. "It’s good for us, and we’re contributing to people’s increase in knowledge and capability."

But for the future, Blue Shield of California is focusing on business-oriented certifications. The company is training 50 of its directors and managers in Information Technology Infrastructure Library (ITIL) Version 3, a business process model.

And for seven years, Blue Shield of California has required PMI certifications for all of its project managers and project directors.

"The business-oriented certification is in addition to, not instead of, a technical certification," Veeneman says.

Experts say technical certifications are most helpful for entry-level and junior positions.

"Most employers would say that technical certifications are like a great academic record: They may get you noticed and in the short stack of resumes being considered, but it’s what roles you’ve played and what you’ve done on previous jobs that will get you hired," Colarusso says. "We see technical certifications making the most difference in employers filling entry-level positions."

In the case of mid-level and senior positions, on-the-job experience trumps certifications, experts say.

Technical certifications may help you get hired, but "experience matters more," says Henry Eckstein, senior vice president and CIO of York Insurance Services Group in Parsippany, N.J. "People can cram for their certifications and get their certifications. So it’s not just certifications but how long have they had them and how have they used them that matters. Technical certifications are less valuable than experience."

Foote adds: "When it comes to hiring, if you have everything else -- experience with customers, functional experience -- and if you’re not certified, who cares? A lot of people never got certified because they were so busy doing [implementations]."

AddThis Feed Button

Google Mobile Maps PinPoints Your Location Without GPS

Google has been adding features to its maps at a fast and furious pace. Yesterday, it was terrain and wiki-style collaboration for its Web-based maps. Today, it updated its mobile maps to pinpoint your locations by triangulating between cell towers (or if you have GPS on your phone, it uses that, but only 15 percent of phones sold this year even support GPS). I just downloaded the My Location app to my Blackberry (sans GPS), and it pinpointed me to within a block of my location in Manhattan. I’m a little blinking blue dot on the map. Although, if I move around the office, it picks up another set of cell towers and puts me nearly six blocks away. Oh, wait, now it has me nearly perfectly on the right block. Now it has be around the corner again. At least it’s got the right neighborhood—and Manhattan does have a lot of cell towers.

Here’s a video explaining how it works:

AddThis Feed Button

Microsoft Sued Over Halo 3's 'Consistent' Crashes

A San Diego man says Halo 3 is a faulty product that frequently crashes when played on the Xbox 360.
Master Chief better get a good lawyer to go along with his plasma gun.

A San Diego resident who recently purchased Halo 3, which stars the pistol packing super soldier, has filed a lawsuit against Microsoft -- alleging that the company released a faulty product that frequently crashes when played on the Xbox 360.

In court papers filed this week, Randy Nunez charges that Halo 3 "consistently causes the Xbox 360 to crash, freeze, or lock up while the game is being played."

Along with Microsoft, Nunez also is suing Bungie, which developed Halo 3 along with Microsoft and recently spun off from the software maker. The action was filed in U.S. District Court in Southern California.

Nunez said he purchased a copy of Halo 3 at a Gamestop store in San Diego in mid-October. When he tried to play it on his Xbox 360, the system "repeatedly locked up, froze and/or crashed," Nunez said in court papers.

The lawsuit contends that the problem is widespread, and that Microsoft and Bungie haven't taken any steps to fix it.

"Although faced with repeated and mounting consumer complaints and inquiries concerning this operational flaw in Halo 3, the defendants have failed to recall Halo 3 or otherwise remedy its failure to function on the Xbox 360," the suit alleges.

As a result, Nunez charges that Microsoft and Bungie are in violation of consumer protection laws. Nunez is asking the court to give the suit class action status and is seeking unspecified damages.

Microsoft and Bungie have yet to file a formal response to Nunez' allegations.

Halo 3 smashed video game industry sales records when it debuted in September. It took in more than $300 million in sales during its first week on the market, including $170 million in first-day receipts.


Steve Jobs Anointed Fortune's Most Influential Exec

Bill Gates, Eric Schmidt, Larry Page, Sergey Brin, and Mark Hurd also made the top-25 list.

Apple CEO Steve Jobs, the man behind the popular iPod, is the world's most powerful businessman, according to Fortune Magazine's list of the 25 most influential executives.

PepsiCo CEO Indra Nooyi, who reshaped the soft drinks giant, is the most powerful businesswoman, said the magazine, which made its selection partly based on executives' "world-class oomph".

The heads of conglomerates including Procter & Gamble, General Electric, Goldman Sachs, Toyota, Boeing and BHP Billiton made the list, as did the men behind search engine Google -- Larry Page, Eric Schmidt and Sergei Brin -- who jointly came in at number 4.

Following is the Fortune "Power 25" list: 1. Steve Jobs, CEO and Chairman, Apple 2. Rupert Murdoch, Chairman and CEO, News Corp 3. Lloyd Blankfein, Chairman and CEO, Goldman Sachs 4. Eric Schmidt, Larry Page, Sergey Brin, Google 5. Warren Buffett, Chairman and CEO, Berkshire Hathaway 6. Rex Tillerson, Chairman and CEO, Exxon Mobil 7. Bill Gates, Chairman, Microsoft 8. Jeff Immelt, Chairman and CEO, General Electric 9. Katsuaki Watanabe, President, Toyota 10. A.G. Lafley, Chairman and CEO, Procter & Gamble 11. John Chambers, Chairman and CEO, Cisco 12. Li Ka-shing, Chairman, Cheung Kong Holdings/Hutchison Whampoa 13. Lee Scott, CEO, Wal-Mart 14. Lakshmi Mittal, steel magnate 15. Jamie Dimon, Chairman and CEO, JPMorgan Chase 16. Mark Hurd, Chairman and CEO, Hewlett-Packard 17. James McNerney, Chairman and CEO, Boeing 18. Marius Kloppers, CEO, BHP Billiton 19. Steve Schwarzman, CEO, Blackstone 20. Carlos Slim, Chairman, TelMex and Carso Foundation 21. Steve Feinberg, CEO, Cerberus 22. Indra Nooyi, Chairman and CEO, PepsiCo 23. Ratan Tata, Chairman, Tata Group 24. Bob Iger, CEO, Walt Disney 25. Bernard Arnault, chairman and CEO, LVMH (Writing by Miral Fahmy; Editing by Ian Geoghegan)

News By: Reuters

What the Google Intranet Looks Like

What do around 16,000 Google employees stare at in the morning when they’ve arrived at the office? They might be looking at Moma, the name for the Google intranet. The meaning of the name of “Moma” is a mystery even to some of the employees working on it, we heard, but Moma’s mission is prominently displayed on its footer: “Organize Google’s information and make it accessible and useful to Googlers.” A “Googler,” as you may know, is what Google employees call themselves (they have other nicknames for specific roles; a noogler is a new Google employee, a gaygler is a gay one, a xoogler is an ex-one, and so on).

A Google employee in Hamburg (photo taken in mid-2007).

In the beginning, as ex-Google employee Doug Edwards told in a blog post in 2005, Moma “was designed by and for engineers and for the first couple of years, its home page was devoid of any aesthetic enhancements that didn’t serve to provide information essential to the operation of Google. It was dense and messy and full of numbers that were hard to parse for the uninitiated, but high in nutritional value for the data hungry.”

Here’s a picture of the Moma homepage that we got hold of – please note that large areas have been grayed out or whitened out:

On the top of the Google intranet homepage, you’ll find the logo reading “Moma - Inside Google.” Next to it is a search box allowing you to find information from Moma in general, information on specific Google employees, information on availability of meeting rooms, building maps and more. You can choose to include secure content or not via a checkbox. Another checkbox offers you to use “Moma NEXT" for a more experimental variant of search results.

To the top right, there’s an option to switch to iMoma, an iGoogle-style tool prepared by the company which allows further customization of the intranet start page. This way, employees may be able to select their own news and service widgets of interest to be displayed when they log-in.

The actual content of the homepage in the picture is split up into 4 columns. To the left, there’s a “My Office” section, with information for employees and a way to choose your own office for more relevant links. It’s followed by the sections “Survival Kit” and “My shortcuts.” In the middle columns, news gadgets are headlined “Welcome to Google!,” “Communications,” “HR” (human resources), “Company Info” and “Internal Google news,” all in common soft shades of Google base colors. The right column is listing Google teams.

Searching Moma

When you perform a search on Moma, you will see a result similar to the following; this screenshot, which was edited by Google to include comments, has been published by the Google Enterprise Blog in a post of theirs in July to show-case the kind of functionality available:

On the image, you will see a “universal search" style result including employee information, bookmark results, documents hosted on Google’s intranet, and a list of related queries. Users get to choose between ordering by date or by relevance. One can also limit the results to different segments like “Tech,” “Official,” or “Community.” Google in their blog said the use the Google Search Appliance to power this service.

Ex-employee Doug Edwards mentioned how he came to take for granted everything was available on the intranet, “from the status of products in development to the number of employees at any point in the company’s history.” He adds that the transparency was also a motivator, as “Your failures are also visible to everyone in the company, which provides an even greater motivator to continuously improve performance in the areas for which you are responsible.” These days however, as Doug writes, Google “clamped down on who had access the complete state of the business.”

The following photo shows a result for what seems to be an employee search. The photo is used with permission from Zach at, though Zach tells me it had been anonymously submitted to him (note we added blurring to the phone numbers of the zoom version):

On the employee results page, everyone is listed with their name, a photo, their job title, telephone number and more. Clicking through to an employee lands you on their full profile page. Ex-Googler Doug Edwards remembers how many Google employees used “alternative images and titles" for their Moma listing. “I recall photos of samurai warriors and masked figures with titles like ’Shadow Ops’ and ’Black Ops.’ These were later weeded out as part of an upgrade”.

Employee data may also be rendered in different forms. Below is a screenshot we first posted on in February of an internal application called Google Percent:

This service simply shows how many employees are newer than a particular other employee (some areas in the image have been blackened out).

How employees access the intranet

Photo courtesy of Zach, again. The dialog reads, “Many internal apps. One login page.” The input boxes ask for the user’s LDAP (Lightweight Directory Access Protocol) credentials.

A Google employee can log-in to the intranet from within the office, or with a so-called Virtual Private Network (VPN) connection. This connection comes pre-installed on laptops Google hands out, and can be reached via a desktop icon. A Google employee is required to authenticate their sign-in with account credentials.

From within a Google building, an employee may likely reach the intranet via the address We previously found out Google additionally uses many sub-domains in their intranet, like,,,,, You may also likely just enter e.g. “m” (which maps to “http://m” which is “”) to be taken to a service like your Gmail-powered email account.

Externally, like from a laptop at a conference – or if you’re one of the employees mainly working from home, as there are some – employees can access the VPN servers located on sites like Mountain View or Dublin, Ireland, with different hostnames each like or (we depleted part of the hostname).

Google “eating their own dog food”

Google employees use many of the tools Google produces. They even have launched an internal “dogfood” campaign in 2006. But what they see may be newer versions of the services than those released to the outside.

Photo by Andrew Hitchcock from July, Creative Commons-licensed (edited for brightness/ contrast).

If you work in a team for a product, you may also get a prototypical version of the service. Below for instance is a screenshot from a nightly build of Google Spreadsheets – codename “Trix” – which we were able to take a look at (note several areas in this image have been grayed out):

In above image you can see the disclaimer “Warning: This is NOT production. Data can be lost.” Special links to debug windows are offered to developers as well, one of them being opened in the screenshot. Google employees also get to see previews of completely unreleased tools, such as wiki service JotSpot (which is being integrated into Google Apps), or Platypus, the internal Gdrive client for file-sharing.

For code reviews, Google created Mondrian, a “Perforce backend with some custom Google wrappers on top,” as Nial Kennedy, who shot the following photo (Creative Commons-licensed), notes:

And the following image shows Google in-house tool Trax (this is part of a larger photo by Google employee Andrew from Flickr, but it is not available anymore; we’re not quite sure how this tool works or what it achieves):

But, Google doesn’t just use their own tools. For instance, we came across information indicating that many Google employees prefer social network to their own production, Orkut (e.g. some Google employees considered Orkut too spammy, or too buggy in the past).

If a Google employee encounters trouble with any Google tool, they can call their internal support hotline named “Tech Stop.” The hotline promises 24-hour availability. Numbers like +1 877... (last part depleted) are partly toll-free and partly with toll, and accessible from all over the world. Internally, a Google employee may also simply press 3-HELP (3-4357). Tech Stop centers aren’t just located in the US, but also in places like Hyderabad, India.

Tech Stop support wasn’t always that luxurious though, as Doug Edwards noted in another article. When he left the company in 2005, a supportive Tech Stop was available in every building – but in the beginning when he joined, he notes that for instance not all operating systems were supported. When you were facing an issue with corrupted Windows DLL files, a common response was, “Why aren’t you running Linux?”

Stop writing garbage HTML!

In a world full of broadband connections, it can be tempting to let your page weight to creep up a bit. While a bit more heft in a page is probably acceptable, it still is silly to write wasteful HTML. Wasteful HTML needlessly increasing bandwidth bills, increases load times, and can (depending on how it is done) increase the browser render times.

One of the things I noticed on a project that I am currently working on, is that the HTML generated dynamically is about three times as large (measured in KB) as it needs to be, primarily due to whitespace. It is not the kind of whitespace that HTML writers put in to make things easy like indentation. It is just wasteful whitespace. For example, in one generated table, for every table cell, there are about 40 lines with 30 – 50 spaces per line between the tags. On this particular page, just removing the uselessly generated whitespace would reduce the page weight by 50%. On the same page, there are tables with alternating row colors. Instead of defining two cell classes in an external style sheet which gets downloaded once as cached, and using the right class in the tag, the HTML writers used an inline style attribute on every row tag. Wasteful!

All said and done, this particular page is about three times as heavy as it needs to be, simply due to poor coding. And that does not even touch the JavaScript which could and should be stored in an external file. Another killer is that many dynamic Web pages are set to not be cacheable, which means that instead of being wasteful one, they are wasteful on every page view. I can understand that many dynamic pages should not be cached. But on these types of pages, it is especially crucial that the HTML be kept to an acceptable minimum.

These kinds of coding practices are what separate the “shake ‘n bake‿ programmers from even the moderately decent ones. There is absolutely no acceptable excuse for this kind of coding. Not only is your HTML or templates more difficult to maintain, but all of the inline JavaScript and CSS styling discourages reuse, standardization, and other good habits. It also makes a site significantly harder to maintain. It makes for a miserable user experience. And it sends the bandwidth bills through the roof. Not only should you be writing better HTML, but if your Web server has the CPU power to spare, you should turn on HTTP compression. HTML compresses quite well. In addition, you may want to investigate a post-processing engine (again, CPU needed for this) that strips all unneeded whitespace, comments, and other cruft from your HTML output. Even if none of that is an option, consider using such a weight reducer at the time of deployment on your static pages and templates, to reduce the page weight. Such a system would probably be under ten lines of Perl to write; for this particular project, this ten line Perl script can save my employer probably 50% on their bandwidth bills for this particular project. Who can object to that?

courtesy @TechRepublic

Sun’s Java certifications: Are they worth the effort?

Sun’s Java certification track

Sun’s Java certifications are designed to be focused on particular roles in the software development cycle and, therefore, are more useful than all-in-one certifications such as IBM’s XML certification.

Sun currently offers eight Java certifications, which are classified by level and specialization. Most of the certifications require you to pass a multiple choice exam, but some also require you to write an essay. It is recommended to have six to twelve months of actual job experience before attempting to pass any exam.

  • Sun Certified Java Associate (SCJA): This entry-level exam certifies only knowledge of basic Java language concepts and general knowledge of Sun platforms.
  • Sun Certified Java Programmer (SCJP): At the “foundation” level, there are exams for Java 1.4 and Java 5.0. These exams certify solid knowledge of the Java language. (Note: It is not required to have SCJA to get SCJP, which makes me wonder why SCJA certification is needed at all.)
  • Sun Certified Java Developer (SCJD): Many employers may focus on this level of certification for two reasons: You need to be an SCJP (any version) before you can try to become an SCJD. Also, the SCJD requires candidates to develop a small business system according to the problem and write an essay defending the solution and explaining the design and programming decisions.
  • Sun Certified Web Component Developer (SCWCD): This exam can be of interest for Web developers who specialize in using Java technologies such as Java Server Pages (JSP) and servlets. SCJP is a prerequisite for taking this exam.
  • Sun Certified Business Component Developer (SCBCD): This certification, which consists of only one exam, is the kernel of J2EE certification — as long as it certifies your knowledge of Enterprise Java Beans (EJB). The exam is pretty hard to pass if you do not have any Enterprise JavaBeans (EJB) project experience. SCJP is a mandatory prerequisite. This certification can be of interest to employers who use EJB for project development.
  • Sun Certified Developer for Java Web Services (SCDJWS): This certification is for Java developers who build Web services. You have to take one exam for this certification, and SCJP is a prerequisite.
  • Sun Certified Mobile Application Developer (SCMAD): This is a certification for developers of Java applications for cell phones or any other devices containing J2ME onboard. You have to take one exam for this certification, and SCJP is a prerequisite.
  • Sun Certified Enterprise Architect (SCEA): This is what the Sun certification program is all about. This certifies enterprise architects responsible for architecting and designing J2EE-compliant applications from scratch. There are no prerequisite requirements even though it is the most advanced certification. In fact, if you cannot pass any of the previously listed certifications, you will never succeed with this one. To achieve this certification, candidates must complete three steps: a multiple choice exam, a development assignment similar to SCJD (but on a much larger scale), and a final essay exam where you will defend your solution.

See the Sun Microsystems Web site for more information about Java certifications, including the cost of the exams.

Is the effort you expend worth the result?

I have two Java certificates: SCJP and SCWCD. I earned the first certification while I was student at university; my professor awarded students with vouchers for attempting to take the SCJP exam. With the second certification, Sun contacted me about its new certification program and invited me to assess my skills for free (and take the actual exam) in exchange for my feedback about the questions and about the certification itself.

I think both of my certifications are pretty much useless pieces of paper. The main reason why I got these certifications was to prove to myself that I am proficient in Java. While preparing for these exams, I learned a lot; also, since I was engaged in real production projects at that time, I immediately started applying my newfound knowledge. This is the only reason why I would recommend that Java developers pass the entry- and mid-level exams. None of my employers showed interest in looking at my certifications.

The SCEA certification, however, is a completely different story. If you peruse career sites, there are lot of vacancies for which SCEA is considered highly desirable. Developers can only earn this certification after having a lot of experience in software architectural design and working with J2EE, i.e., with a broad range of Java technologies. SCEA is the most attractive certification for developers who are seriously thinking about becoming a software architect. I don’t think the other certifications offer much value.

It’s been my experience that most employers will overlook your certifications unless your resume shows that you have hands-on experience working with a particular technology. At the other end of the spectrum, I have seen examples of successful career building on the base of certifications. In my opinion, this is more a question of a particular certification program and particular holder’s attitude to the certification. Most IT pros take certification exams more for self-learning than for their employer.

courtesy @TechRepublic

Thursday, November 29, 2007

Did The Wall Street Journal sabotage businesses by publishing tips on how to circumvent IT?

In the Monday, July 30, edition of The Wall Street Journal, there was a special section on technology that led with the article “Ten Things Your IT Department Won’t Tell You” by Vauhini Vara. If you haven’t read the article, you should take a look because some of your users may have have already seen it, and as a result they may be engaging in activities that put themselves and your IT department at risk.

The Journal Report front page for Monday, July 30, 2007

Here is the list of the 10 items in Vara’s article:

  1. How to send giant files
  2. How to use software that your company won’t let you download
  3. How to visit the Web sites your company blocks
  4. How to clear your tracks on your work laptop
  5. How to search for your work documents from home
  6. How to store work files online
  7. How to keep your privacy when using Web email
  8. How to access your work email remotely when your company won’t spring for a BlackBerry
  9. How to access your personal email on your BlackBerry
  10. How to look like you’re working

Vara breaks down each item into four sections — The Problem, The Trick, The Risk, and How to Stay Safe.

Make no mistake, this article was extremely popular. The Wall Street Journal publishes its list of the Most Viewed and Most Emailed articles on for each day, and for July 30, “Ten Things Your IT Department Won’t Tell You” was one of only two articles that made the top five on both lists. It was No. 1 on both.

Sanity check

The problem is that the information in this article is unequivocally damaging for businesses and their IT departments, as well as for the users that The Wall Street Journal is supposedly trying to serve.

While I am generally a fan of The Wall Street Journal — and its tech coverage is typically rock solid — I was very disappointed by this piece. Although it did not reveal any information that couldn’t be found elsewhere, I don’t like the fact that the Journal spoon-fed a bunch of dangerous tips to users and all but encouraged a quiet revolt against the IT department.

A few of Vara’s tips are fairly innocuous, such as “How to send giant files” and “How to clear your tracks on your work laptop.” In fact, many IT pros could pass those items to users along with some tips of when and how to use them. The large file issue can ease the burden on e-mail attachments and storage and the “clear your tracks” tip can be turned into a good privacy and security practice.

However, several of the other tips are dangerous to the point of idiocy, especially “How to use software that your company blocks,” “How to visit Web sites your company blocks,” “How to search your work documents from home,” and “How to access your work email remotely when your company won’t spring for a BlackBerry.”

The issue of showing users how to access software and sites that the company has filtered is a recipe for disaster. Often the stuff that is banned is banned because it can introduce spyware and malware to the system or it can bog down the computer and/or the network. When users find ways around that, they introduce significant security and privacy risks to the company, and they can potentially decrease their own productivity by clogging up their machines with spyware and adware.

In terms of “How to search your work documents from home,” Vara recommends using Google Desktop to sync documents between a work PC and a home PC. That might be okay for a few consultants and small businesses, but it’s a terrifically bad idea for anyone in the corporate world (The Wall Street Journal’s core audience). The implications for privacy, confidentiality, and compliance are severe and serious, especially if any of the files involved contain customer or financial data. Plus, there are easier ways to handle the issue that preserve security, such as a VPN connection and Remote Desktop from a home PC to a work PC.

And then there’s the issue of “How to access your work email remotely when your company won’t spring for a BlackBerry.” Forwarding work e-mails to personal e-mail accounts and devices — as the Journal article advises — is another potential disaster waiting to happen. It raises the same issues of confidentiality and compliance because when you forward all mail, it is very likely that you’ll end up sending customer data and corporate financial information to your personal accounts.

While the Journal article ostensibly shows some responsibility and restraint by including sections on “The Risks” and “How to Stay Safe” for each of the 10 items, the author either does not fully understand all of the security and compliance risks involved or simply chose to make light of many of them. Either scenario is a strong indictment against the article.

The compliance issues, while mentioned in the article, are much more serious than Vara seems to realize because they can expose a company to major financial risk (in the form of fines, lawsuits, and legal fees). Likewise, the security issues are much more serious than the Journal article presents them. Hackers have gone professional (and in some cases joined forces with organized crime) and are out there looking for employees and companies to steal data from and use for blackmail or money laundering. The TJX security scandal could serve as a sober warning to that effect, once all of the details come to light.

While users often get frustrated with the IT department and the restrictions that it puts in place, the answer is not to train people how to make an end run around IT. In many companies, there’s already too much of a disconnect between IT and the rest of the organization because of the fact that IT often plays the role of a police officer — to serve and to protect.

The root problem that The Wall Street Journal was trying to address is that many users want and need to do some personal computing on their work machines and/or access work apps and data from their home machines or devices. That’s a reality that businesses and IT must face, and they must come up with some workable solutions.

Since many of today’s users access their e-mail and work during “off hours,” it’s certainly reasonable that they should also be able to do a little bit of personal computing during company time. There simply needs to be a safe and relatively easy way for them to do it. Some companies have solved this with separate virtual machines, using VMware or Virtual PC or a Web-based solution like Other solutions need to be explored, and big players such as Apple and Microsoft, as well as small vendors with creative solutions, need to all be involved. This will be an important part of the next generation of operating systems, devices, and a borderless information security strategy.

For The Wall Street Journal, which depicted itself as a “public trust” during its recent acquisition tug-o-war with News Corp, fueling a turf war between IT and its users is not the kind of journalism that meets the high mandate it has set for itself.

For IT departments, the genie is out of the bottle on many of these tips and tricks that allow users to circumvent IT procedures. As a result, IT departments need to aggressively partner with employees, educate them on the severity of security and compliance risks, and find ways to meet the needs of users whose computing experience now overlaps between work and home.

What do you think about The Wall Street Journal’s list? How do you think IT can help users bridge work computing and home computing while still maintaining data security?

courtesy @TechRepublic

Wednesday, November 28, 2007

Google Reportedly Plans To Offer Online Storage Service

The product would be a kind of umbrella service for the storage Google already offers with some of its Web-based applications, such as e-mail and photo sharing.

Google is planning an online storage and backup service that would essentially offer people a Web-based hard drive for accessing and sharing information that resides in their home computers.

The product would be a kind of umbrella service for the storage Google already offers with some of its Web-based applications, such as e-mail and photo sharing, the Wall Street Journal reported Tuesday, quoting anonymous sources. No timetable was given, and there was no guarantee that future developments wouldn't cause Google to shift tack or cancel the project.

Google has declined comment on the report.

Online storage and backup services aren't new to the Web. Google rivals Microsoft and Yahoo offer services called SkyDrive and Briefcase, respectively. In addition, there are a variety of niche players, such as; and companies like Mozy that provide a fairly extensive backup service.

Google, however, believes it can differentiate itself by developing a user interface that's easier to use than other services. One obstacle that Google may not find a way around is the slow upload times for many broadband connections, particularly DSL. If a person, for example, creates large video files, then it may take hours, if not more than a day, to upload files to Google, like any other online storage service.

The report on the effort, which according to the Wall Street Journal was known internally at Google as "My Stuff," comes three months after Google started offering paid storage options for its Web applications. Users of Picasa Web Albums and Gmail, for example, could pay annual fees of $20 for 6 Gbytes, $75 for 25 Gbytes, $250 for 100 Gbytes, and $500 for 250 Gbytes. Picasa offers 1 Gbyte of free storage, and Gmail gives users 2.8 Gbytes at no charge.

Google unveiled its storage options shortly after Microsoft launched its free online storage service SkyDrive, which offers 500 Mbytes. At about the same time, Apple upgraded its .Mac service to include 10 Gbytes for $100 per year.

It's unclear how Google's new offering would compete in price and features with its competitors' services. But the growing number of online storage options indicates vendors see a lucrative opportunity. In the case of Google, knowing more of what's in a person's hard drive could broaden the possibilities for targeted advertising.

Google's Goal: Renewable Energy Cheaper than Coal

Creates renewable energy R&D group and supports breakthrough technologies

Mountain View, Calif. (November 27, 2007) – Google (NASDAQ: GOOG) today announced a new strategic initiative to develop electricity from renewable energy sources that will be cheaper than electricity produced from coal. The newly created initiative, known as "RE
"We have gained expertise in designing and building large-scale, energy-intensive facilities by building efficient data centers," said Larry Page, Google Co-founder and President of Products. "We want to apply the same creativity and innovation to the challenge of generating renewable electricity at globally significant scale, and produce it cheaper than from coal."

Page added, "There has been tremendous work already on renewable energy. Technologies have been developed that can mature into industries capable of providing electricity cheaper than coal. Solar thermal technology, for example, provides a very plausible path to providing renewable energy cheaper than coal. We are also very interested in further developing other technologies that have potential to be cost-competitive and green. We are aware of several promising technologies, and believe there are many more out there."

Page continued, "With talented technologists, great partners and significant investments, we hope to rapidly push forward. Our goal is to produce one gigawatt of renewable energy capacity that is cheaper than coal. We are optimistic this can be done in years, not decades." (One gigawatt can power a city the size of San Francisco.)

"If we meet this goal," said Page, "and large-scale renewable deployments are cheaper than coal, the world will have the option to meet a substantial portion of electricity needs from renewable sources and significantly reduce carbon emissions. We expect this would be a good business for us as well."

Coal is the primary power source for many around the world, supplying 40% of the world's electricity. The greenhouse gases it produces are one of our greatest environmental challenges. Making electricity produced from renewable energy cheaper than coal would be a key part of reducing global greenhouse-gas emissions.

"Cheap renewable energy is not only critical for the environment but also vital for economic development in many places where there is limited affordable energy of any kind," added Sergey Brin, Google Co-founder and President of Technology.

courtesy @

Use these techniques to build a high-performing team

High-performing teams are a magical, but rare, convergence of the right people, processes, and environment. They work much more effectively and have a much higher productivity rate than most teams. Best of all, they are extremely fun and motivating to work on.

There are some common characteristics of high-performing teams. Knowing these characteristics can help you move your team down this path.

Set common objectives. Teams cannot perform at a high level unless all of its members are striving toward a common set of objectives. Even if members of your team do different jobs, you can usually write a set of objectives that will encompass all of them. If possible, the team should also be rewarded based on achieving this common set of objectives.

Establish good internal work processes. You can’t build consistently good products or deliver good services with poor work processes. The high-performing team has a set of internal processes that guide how members act and react in particular circumstances. For instance, if problems arise, they know how to invoke problem-solving techniques. If a customer makes a request for a change to specifications, they know to invoke scope change procedures.

Instill good work ethic. This probably goes without saying. High-performing teams rarely form in an environment where people complain about their workload or where team members complain about the work habits of other team members. High-performing teams find the challenges associated with their work and work hard to complete their assignments within expectations.

Keep everyone focused. The high-performance team is focused on the objectives and the deliverables, and understands how to achieve them. They don’t get sidetracked by rumors or politics. They don’t get absorbed in gossip. They don’t spend more time complaining than working. They know what is expected of them and do the best they can to meet those expectations.

Strive toward a balanced set of key skills. A high-performance team has all the skills needed to complete the work on its plate. Team members have the skills needed from a technical standpoint, as well as the right set of role-based skills. For instance, it’s hard to be a high-performance team when everyone wants to be the Team Leader. If some of these “leaders” are asked to build deliverables instead, they may not have the right skills or the right motivation for the team to be successful. In a high-performing team, people understand their strengths and weaknesses, but they’re also willing to work outside their comfort area when needed.

Foster mutual respect. Members of high-performance teams typically get along with each other and like each other. They have respect for each other and trust that the others are working as hard as they are. They assist other team members when they’re in need and understand that team members will do the same for them if needed.

Tuesday, November 27, 2007

What causes a great performer to go sour?

A lot - maybe most - of my work for companies has to do with “remedial” coaching. In HR-speak, this translates to something like, ” He/she was really good for a while; but now they just aren’t performing at the level we need. If they can’t get back in the game, we probably won’t be able to keep them. We want you to help them to get re-engaged.”

Occasionally, I am also asked to work with stellar performers to help them move up the ladder more quickly. But those situations are few and far between. I think this simple fact says a lot about most organizations and their management styles. And what it says is important…..

See if this next sound bite sounds familiar - you may have had it said to you; or you may have said it to a member of your own team:

” (Insert name here), you’re doing a great job! We’re very impressed with the way you get things done; and to show you that we think you’ve got real potential, we’re going to let you take over a bigger responsibility. You’ve shown us you have the skill, talent and dedication to move forward in this organization and we like that. So, here you go - more people working under you (or more job scope, or more dollars in a bigger budget, or more whatever). We’re going to keep an eye on you (insert name again) and if you perform like we think you’re gonna; we’ll keep giving you more responsibility. Everyone will see that you are a key player.”

In most cases, the person who was given this new extra responsibility is very happy with the verbal pat on the head and moves into her or his new role with great enthusiasm.

Often, they continue to excel and the boss sees this. And then to show appreciation, the boss gives the high performing person another level of responsibility or a promotion. And both sides feel good again. But this is where things may get a little sour.

Some people refer to what happens next as The Peter Principle in action. If you’re not familiar with the term it’s from Dr. Laurence Peter, who said back in 1968 that “..every employee tends to rise to his level of incompetence.” Peter intended it to explain the upward, downward, and lateral movement of personnel within a hierarchically organized system of ranks. You have probably seen this occur - may have had it in your own career. This is when the HR department calls on a success coach to help “fix” the situation.

I don’t think Peter’s concept was exactly sound however because it contends that the team player was responsible for the poor outcome. I believe that the manager is the one responsible for the situation when the team member started to fail.

Many managers do this when they should do precisely the opposite. They take their great players and burden them, little by little, until they finally go sour. They use the great ones to offset the weaknesses of other team members, picking up more work while the slackers or incompetents get away with doing less. Often what occurs is that the great ones end up working 10 or 12-hour days and the weak links in the chain get to work 8 or 9 hours because they have less to do.

Inadvertently, the stars get penalized for being stars!

What to do?

1. Re-think your use of talent. When you’ve got a great one under you; use them to help you run a better group.
2. Rather than job enlargement - go for job enrichment. Give them juicy-but-challenging special projects that will help develop new skills.
3. Or let them have the luxury of time to help you by studying and examining processes or tasks to determine how they can be improved.
4. Let them see that you value them by treating them special. They’ll perform with continually renewed enthusiasm which helps make you shine at the same time.
5. And when they need some help that you or others can’t provide, bring in others from the organization or even outsiders to mentor and coach them to help them grow even more quickly.

Your organization will gain a reputation as a place where people want to work. You will attract and retain the best available.

Adobe AIR brings the Web to the desktop

One of the points of my article about the qooxdoo JavaScript library was the concept of building Web applications with a rich user interface that mimics desktop applications. This is good if you want to mimic the look and feel of a desktop application within a Web page. On the flip side is bringing the Web to the desktop - that is, leveraging Web development skills on the desktop. The Adobe Labs has released the Adobe Integrated Runtime (AIR), which provides this functionality.

Adobe describes AIR as a cross-operating system runtime that allows developers to leverage existing Web development skills to build and deploy rich Web applications to the desktop. It provides support for Flash, Flex, HTML, JavaScript, and AJAX.

Getting it

To get started with AIR development, you must install the AIR runtime on your computer. Once it is installed, you may download sample applications to see AIR in action and possibly take a peek under the covers at its code.

There are two downloads relevant to AIR development:

  • Runtime provides the runtime environment for running AIR applications. Downloads are available for both Windows and Macintosh operating systems.
  • Software Development Kit (SDK) provides everything necessary to build AIR applications. This includes templates, Adobe AIR APIs, and debugger and developer tools. The SDK is available for both Windows and Macintosh platforms. The command line debugger and developer tools require a Java installation (JRE or JDK version 1.4.2 or newer).

Additional downloads are available that allow you to build AIR applications within specific Web development tools:

  • Adobe Flex Builder 3: Includes support for building Flex applications on Adobe AIR from within Flex Builder.
  • Adobe Flex SDK: Allows you to build AIR applications via Flex.
  • Adobe AIR Extension for Dreamweaver CS3: Adds support for building AIR applications within Dreamweaver CS3.
  • Adobe AIR Extension for Flash CS3 Professional: Allows you to build AIR applications with Flash CS3 Professional.

In addition, a plug-in is available for the Aptana IDE. Once the runtime is installed, you can easily install and run AIR applications, and the SDK allows you to build AIR applications.

AIR HTML application basics

This article focuses on using standard Web technologies HTML and JavaScript to build an AIR application. AIR uses WebKit to parse, layout, and render HTML and JavaScript content. The AIR API provides host classes and objects for providing desktop applications functionality like reading and writing files and managing windows. In addition, an HTML-based AIR application has the Flash API available to it.

An important distinction of HTML-based AIR applications is that the use of the AIR API is optional. That is, you may choose to use only standard HTML and JavaScript to build an application and run it via the AIR runtime. The runtime includes an HTML renderer and JavaScript interpreter in addition to other features.

There are at least two files in every HTML-based AIR application. The first is an application descriptor file that specifies the application metadata via XML. The second file is a top-level HTML page. Also, AIR provides a JavaScript file (AIRAliases.js) that provides aliases for AIR API classes. More robust applications will include more files like Web pages and JavaScript code.

The AIR SDK includes plenty of sample code for getting a feel for the platform. The following sample code is included in the documentation to get you going with a first, simple application (the ever present Hello World demo).

The following descriptor file provides the details of the application. It references the AIR namespace and assigns a name to the application (Hello World!). The initalWindow element defines application startup behavior as an HTML file (Hello.html) is loaded.

The HTML file (Hello.html) defines the user interface displayed when the application is launched via the AIR runtime. First, the JavaScript aliases file is included to make it easier to work with AIR classes. Next, the JavaScript appLoad function defines what happens when the application loads (function called by onLoad event of page).

The JavaScript function loads data from a simple text file via AJAX and places the text from the file in the HTML element with the ID called replace.

Once the application is developed, the AIR command line tools can be used to package and distribute it. The AIR Developer Tool (ADT) creates installation packages, but it requires a digital certificate.

A simple approach

The AIR platform offers a great approach to building desktop applications. I love the fact that it allows me to use existing skills like HTML and JavaScript.

The AIR API offers additional functionality for building client interfaces. The API is JavaScript, so it is easily used within your application. While the qooxdoo approach is the exact opposite, I find the AIR model much more intuitive and easy-to-use. Everything necessary to get started with AIR is freely available online.

Leverage existing skills

A key point of AIR is the ability to port Web development skills to desktop development. Also, using Web technologies like HTML and Flash deliver a familiar interface to users, and developers do not have to spend time learning a new technology such as Microsoft .NET for thick client development. Another strong point is the cross-platform support that is not readily available in other development platforms. If you are interested in desktop applications, take a look at AIR.

The Web browser has evolved into the de facto standard application interface these days, but client applications are still necessary. Have you been faced with developing applications for the desktop? Have you taken a look at AIR?