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.