SAFE Banner

MARCH 2011

VOLUME 3, ISSUE 3

Software Scan

The President's Column

Can graduates of computer science programs actually program? My experience says no. In the Scanning IP section of this month's newsletter I discuss my own disappointment with computer science students. I'd like to hear the experience of others. I hope that I've just been unlucky with the candidates applying to my companies, but I suspect that university programs have gotten less rigorous or are focusing on skills other than programming. If so, this will have more serious repercussions for American competitiveness than any of the other things being debated by politicians and academicians.

CodeMeasure, our product for measuring software development efforts and code growth will now produce results without requiring a paid license. Read more in the Scanning Tools section of this month's newsletter.

Send me your comments and critiques. I'm always interested in hearing from you.

Regards,


Bob Zeidman
President, SAFE Corporation


Scanning IP

Is Googling Replacing Programming?

In the past few years I've been interviewing students for job openings at my companies. Some students came from large, well-known universities while other came from small colleges. Some students had bachelor's degrees in computer science while others had master's degrees. One thing that many of these recent graduates had in common was that they couldn't program competently.

I found that these graduating students were adept at finding code on the Internet. When I gave assignments to code a particular algorithm, I was seriously impressed with how quickly they were able to find the code online. When I asked them to modify the algorithm, they struggled. Also, testing and debugging code often seemed beyond their abilities. Many of them were unaware of debugging techniques that allow them to focus in on the problem, such as using breakpoints to isolate chunks of code or forcing conditions that cause certain code paths to be executed.

The art of commenting also seems to have been ignored in most computer science education programs as well as in many companies. In my companies, our coding standard requires that every routine, no matter how small, must have a header comment that describes the functionality of the routine, all input parameters, the output of the routine, and any other information that someone using the routine would need. Yet most programmers out of school, and many working in the industry, produce uncommented code that is difficult to understand, difficult to debug, and very difficult to maintain.

Can you imagine a medical program that didn't teach how to stitch up a patient after surgery or use the latest CT scanner? University computer science departments need to take a serious look at the skills they're teaching. At my companies, I now require prospective employees to sit down at a computer and write a program that works correctly according to a written specification, is fully commented, and is completely their own code. I hope that the percentage of graduates passing this test increases in future years.

Advanced Tools to Detect Software Plagiarism and IP Theft

CodeSuite® & CodeSuite-LT®
Sophisticated sets of tools for analyzing software source code and object code including:

BitMatch®
Check binary object code for plagiarism.

CodeCLOC®
Measure software IP changes between versions of a program.

CodeCross®
Cross check source code for plagiarism.

CodeDiff®
Compare source code to find differences and measure changes.

CodeMatch®
The premiere tool for pinpointing copying.

SourceDetective®
Scour the Internet for plagiarized code.

CodeSuite-MP®
Speed up your analysis on a multiprocessor system.

CodeGrid®
Turbo charge your analysis on a supercomputer grid.

Get Smart

SAFE offers training at our facility or yours or on the Web. Contact us to make arrangements:

MCLE credit in software IP

CodeSuite certification

Your New Office

Remember that you can now have your own secure office at the SAFE facility for storing proprietary software, running CodeSuite, analyzing the results, and getting onsite support. We're located at

20863 Stevens Creek Blvd.
Suite 456
Cupertino, CA 95014
(408) 517-1167

Scanning Tools

CodeMeasure is Now Free

You can now run CodeMeasure to graph the growth of your software project development effort over multiple versions of the software. CodeMeasure uses the Changing Lines of Code (CLOC) method to calculate the growth. The graph that CodeMeasure produces illustrates various CLOC measurements. An example is shown below.

Now there is a caveat (we do need to make a profit after all). You can examine the graph and take a screen shot of it, but you can't save the results to a spreadsheet without a paid license. The good news is that a license is only $500 for a 1-year unlimited license. You can download CodeMeasure here and purchase a license here. This way you get to try out CodeMeasure and see how the results can help you measure your software development effort.

This newsletter is not legal advice. Views expressed herein should be checked for accuracy and current applicability.
Copyright 2011 Software Analysis & Forensic Engineering Corporation