Follow @PDSAInc August 2006 - Posts - Paul Sheriff's Blog for the Real World

Paul Sheriff's Blog for the Real World

This blog is to share my tips and tricks garnered over 25+ years in the IT industry

Paul's Favorites

August 2006 - Posts

Code Generation

I have been speaking at a lot of user groups lately and I always ask how many people are generating code. It is astounding to me just how many people DO NOT do this! Programmers are still writing CRUD (Create, Read, Update, Delete) logic by hand! Code generation has been around for years. Why not take advantage of it? You could use the built-in tools in .NET or go out and purchase an excellent code generation tool like CodeSmith (

 If you have not tried generating code yet for your basic stored procedures and classes to call those stored procedures, what are you waiting for? Jump in! The water is fine! We all need ways to speed up our development cycle, code generation is one way to do it.

There are a lot of reasons for using Code Generation, here are a few:

·        Generation of INSERT, UPDATE and DELETE statements

·        Generation of stored procedures to do INSERT, UPDATE and DELETE

·        Bullet proof code for doing the Create, Read, Update, Delete (CRUD) logic

·        Ability to regenerate CRUD classes if schema changes

·        Consistency of code from one application to another

·        Moves SQL out of the UI tier and into a middle tier where it belongs

·        Moves the dependence on a particular database provider out of the UI

·        Reduces code complexity in the UI layer

·        Ability to map columns to properties in a class

·        Provide IntelliSense of tables, stored procedures, views and columns

·        Provides strong-typing of data in one location

·        Ability to customize templates to fit “your” style

·        Abstracts and encapsulates all data access code

·        Ability to separate programmers working on UI and data access


Attracting new Clients: Suggestion from the Inner Circle

Attracting New Clients

...from the desk of Paul D. Sheriff

The following article is a partial extract from a IT Professional Special report published on Paul Sheriff's Inner Circle in response to a question asked by a member...

If you are an independent consultant or contractor you always need to be thinking about where your next job is coming from. This is one of the hardest things any professional has to do. This special report offers ideas for building your business.

How to sell yourself

The biggest lie in marketing is this: A talented sales person can sell anything to anybody, anytime.
Maybe there are a few snake charmers out there that have this skill, but they will never sell a second item to their customer (or get a second project), once the buyer realizes they've been had.
The truth is you must have 2 qualities to sell someone consistently:

  1. 1. You must be valuable.
  2. You must be present.

You must be valuable

Buyers buy because you solve something, provide something, make them thinner, sexier, happier, more relaxed and on and on. You deliver something they want or need. As a developer, you must solve a problem for your client -- AND, you must communicate what you solve in words they understand. It's no use being an incredible coder and business mind if your buyer doesn't perceive you can solve their problem.

You must be present

I've heard it said that "90% of life is just showing up." If you're going to sell someone, you need to be there when they finally decide to buy. Sounds simple, right? But most people fail, and fail miserably, at this. If you know an application manager that frequently hires developers, you might chat with them at a conference to let them know you're valuable (you understand their problem and you know how to solve it). But it's unlikely that manager has a project for you at that moment. That's because there are many circumstances, most outside your control, that must come together in order for you to get the project: budgets have to be approved, staff must be moved around, the client's company must make a strategic business choice, the economy must improve, who knows what else? So the manager may not (in fact, most likely won't) have a project for you right now. Yet sooner or later, they will suddenly need a developer, and you want to be the first they think of. You do that by consistently 'showing up'. Send an email pointing out a technique you learned recently that you think the managers team could use. Or phone with a question you thought they might help you on. Or mention at the conference about a project you just completed that sounds a lot like the one they're just starting. Any help you can provide, and with some regularity, puts you at the front of the line when an opportunity comes available. This is how you manufacture your own good luck. Here are some other strategies to finding your next project.

Ask your Current Clients

The best place to get your next job is from your current clients. If you have done a good job for current client, ask them for a referral to another business (or division in their company). Don't be shy, just step up and ask them. Most people are happy to help you out when they have been happy with your work. As you are working for someone, you should always be on the lookout for a new project you can do for them or someone else in their organization. This means you need to be introducing yourself and getting to know others in the organization. If you are a somewhat shy developer, then this can be tough, but it is very necessary.

Become a Business Consultant

The days of being just a "developer" are almost over here in the United States. Instead it is much more important that you become a business consultant. That means that you know how to solve business problems using technology, and you are not just "another developer". Those developers that can talk business and not computer jargon are going to be the ones in the most demand here in the US. Coding is becoming a commodity and will continue to be outsourced off-shore. You want to be the one guiding the developer's off-shore and creating the business rules, and the architecture that they will use. This will make you more valuable and keep clients coming your way.


Getting new clients or getting that next job takes work. The best strategy is networking! You can never know enough people. That way you are showing up at opportunities, even when you aren't actually there. You contacts will hear something and help you out.

More Posts