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.