tag:blogger.com,1999:blog-86357479231615669802024-03-05T17:01:32.209-08:00EZ-Metrix(R) Code Counting UtilityEZ-Metrix is a web-based source code counting utility that supports more than 80 (and counting!) programming languages. Quantify the size of your completed code base. Compare 2 versions of code to discover how many physical lines and comments were added, modified, unmodified and deleted. Free 30-day trial available <a href="http://www.jamesheiresconsulting.com/scc/registration.asp">here</a>.James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.comBlogger17125tag:blogger.com,1999:blog-8635747923161566980.post-53756765637903687922015-02-02T13:52:00.000-08:002015-02-03T07:10:21.777-08:00More languages supportedI was recently reading on dice.com about some obscure scripting languages (<a href="http://news.dice.com/2015/01/13/scripting-languages-may-know/">Scripting Languages you may not Know</a>) and wanted to see if EZ-Metrix could count their source lines. This led me to read more in an article "The Next Big Programming Language You've Never Heard Of" about scripting languages in <a href="http://www.wired.com/2014/07/d-programming-language/">Wired Magazine</a>.
After only a few minutes to setup a new rule, EZ-Metrix was able to count all of the languages listed below:
<br />
<ol>
<li><b>Candle</b>: CandleScript is another single-developer scripting language. Developed by Henry Luo, Candle was built to solve issues with processing any hierarchical data. </li>
<li><b>D</b>: D is a language with C-like syntax and static typing. It pragmatically combines efficiency, control, and modeling power, with safety and programmer productivity.</li>
<li><b>Papyrus</b>: Papyrus is an entirely new scripting system created specifically for the Creation Kit.</li>
<li><b>PIKT</b>: PIKT® is cross-categorical, multi-purpose software for monitoring and configuring computer systems, administering networks, organizing system security, and much more.</li>
<li><b>Swift</b>: Apple's language Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. </li>
<li><b>Wolfram</b>: The Wolfram Language (popularly referred to as Mathematica, or simply M) is a general multi-paradigm programming language developed by Wolfram Research, that serves as the main interfacing language for Mathematica and the Wolfram Programming Cloud.</li>
<li><b>Wren</b>: Wren is a class-based concurrent open-source scripting language written in about 5,000 lines of C by ex-games programmer Bob Nystrom, author of the Games Programming Pattern book. </li>
</ol>
EZ-Metrix now supports <a href="http://www.jamesheiresconsulting.com/scc/Supported_Languages.htm">88 programming languages</a>! See if yours in on <a href="http://www.jamesheiresconsulting.com/scc/Supported_Languages.htm">the list</a>.<br />
<ol>
</ol>
James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-89778637569834067282015-01-21T12:13:00.000-08:002015-01-21T12:13:07.641-08:00Arduino Sketch supportAre you a hobbiest involved with the Arduino family of microcontroller boards?
Most Arduino scripts are relatively short and sweet.
However, the potential exists to build quite large and extensive projects with the Arduino Sketch language.
If you need to know exactly how much Sketch you have created, you're in luck - EZ-Metrix supports Arduino Sketch language. Because "The Arduino language is based on C/C++" (according to the Arduino Reference), it can be counted with an EZ-Metrix rule like C++.<br><br>
The example below (borrowed from the Arduino website, http://arduino.cc/en/Tutorial/Blink) serves as an example. EZ-Metrix counts this file (with a C++ rule); 9 lines of code, 4 blank lines and 11 comments, for a total of 24 lines.<br><br>
Let me know if you're using EZ-Metrix on your Arduino Sketches (<a href="mailto:info@jamesheiresconsulting.com?subject='EZ-Metrix for Arduino'">email me</a>).<br><br>
<hr>
<code>
/*<br>
Blink<br>
Turns on an LED on for one second, then off for one second, repeatedly.<br>
<br>
This example code is in the public domain.<br>
*/<br>
<br>
// Pin 13 has an LED connected on most Arduino boards.<br>
// give it a name:<br>
int led = 13;<br>
<br>
// the setup routine runs once when you press reset:<br>
void setup() { <br>
// initialize the digital pin as an output.<br>
pinMode(led, OUTPUT); <br>
}<br>
<br>
// the loop routine runs over and over again forever:<br>
void loop() {<br>
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)<br>
delay(1000); // wait for a second<br>
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW<br>
delay(1000); // wait for a second<br>
}</code>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-23573572270892251032014-12-04T15:16:00.000-08:002014-12-20T10:56:04.840-08:00EZ-Metrix version 4.1.0.3 released!We're pleased to announce a "better, faster and cheaper" EZ-Metrix.
<br>
<b>What's New?</b><br>
1. The Comparison feature now uses a more accurate and 33% faster algorithm (Levenshtein Distance).<br>
2. The Difference threshold feature now works as a percentage of the line, instead of a fixed number of characters.<br>
3. The Price has been reduced to attract new users...now only $9.95 per month, or $49.95 per year.<br>
4. The first month is still FREE.<br>
5. Now, EZ-Metrix supports <i>more than 80</i> programming languages are supported (and counting).<br>
6. New help system, now with complete definitions of all measures.<br>
7. Updated User Guide, Admin Guide and Overview slides.<br>
<br>
Now also on <a href="https://www.facebook.com/ezmetrix">facebook</a>! Stop by and say "like."<br><br>
<b>Many Thanks!</b><br>
Thanks to Jason Jones and his team at <a href="www.cssconsulting.com">Creative Software Services</a> for their support on this project!<br>
Thanks also to Mike Mah (<a href="www.qsma.com">QSM Associates</a>) for the inspiration for this new version.<br>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com1tag:blogger.com,1999:blog-8635747923161566980.post-82602453722054396482014-10-26T09:50:00.000-07:002014-10-26T09:50:35.907-07:00Levenshtein Distance detects differences in lines of code
After chatting with a colleague Michael Mah about the finer points of code counters a couple weeks ago, I've been studying ways to detect differences between 2 lines of code for my EZ-Metrix product. <br>
<b>The problem</b> is not simply to detect differences of any kind, as this could be accomplished by a simple string compare (e.g., does string A = string B?). The challenge is in deciding if the extent of the differences between the lines constitutes, in effect, a completely new line of code. In other words, at what point does the accumulation of differences between two lines of code exceed what one might characterize as 'changes' to the point where the line is considered brand new?<br>
This research has revealed <b>a solution</b> called the Levenshtein Distance (LD) algorithm (en.wikipedia.org/wiki/Edit_distance). In simple terms, the LD is essentially the minimum number of character edits (adds, modifies or deletes) that it takes to change string A into string B. If applied to a code counter, this LD value could be used along with a threshold value to decide if a line of code has been modified (LD value below a threshold), or is new (LD value above a threshold).<br>
In EZ-Metrix, I plan to implement a % threshold, which gives the user a (configurable) way to set their own difference threshold, which is relative to each line's length. This way, short and long lines get treated the same, with respect to characterizing the line as either modified or new. An EZ-Metrix user may want to choose a threshold value of, for example 75%, which would count a line as new, if the number of changed characters exceeds 75% of the number of characters in the original line. Otherwise, the line would be counted as modified. <br>
In the near future, a new version of EZ-Metrix (v5.0) will be released, which implements LD, among other improvements.<br>
I'm hopefully this improvement will be embraced by the industry.
James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-77941416439232646962014-09-01T12:16:00.001-07:002014-09-01T12:16:43.680-07:00EZ-Metrix for Windows?After 6 years in the field, EZ-Metrix v4.1 has produced many comments from over 500 users. Now, finally we're considering taking action on these comments. <BR>What's on the drawing board? A version of EZ-Metrix for Windows. <BR>This "v5.0" will incorporate many of the features our users have been asking for: <BR>1. Run locally, with no need to connect to the internet to measure source code. <BR>2. Support more programming languages. <BR>3. Support languages with complex rules (e.g., PHP). <BR>4. Ability to delete individual reports (Admin only). <BR>5. Support languages with multiple comment delimiters (e.g., JSP). <BR>6. Improve the difference threshold from characters to percent. <BR>7. Repair defects in the comparison algorithms. <BR>If you have additional requested improvements for EZ-Metrix, <a href="mailto:info@jamesheiresconsulting.com">let us know!</a> We'll do our best to include as many as possible.James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-56771332652394209232012-04-05T08:14:00.003-07:002012-04-05T08:48:48.455-07:00EZ-Metrix measures Google's Go language<div style="line-height: normal; ">Several news stories emerged recently about Google's programming language called Go. Although Go has been around since 2007, it has gained credibility recently because of it's fast compilation, automatic semicolon insertion, multi-core CPU support and relatively simple syntax.</div><div style="line-height: normal; "><b><br /></b></div><div style="line-height: normal; "><b>Background:</b></div>According to Wikipedia: "<b style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">Go</b><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">is a</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Compiled_language" title="Compiled language" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">compiled</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)" title="Garbage collection (computer science)" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">garbage-collected</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Concurrent_programming_language" title="Concurrent programming language" class="mw-redirect" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">concurrent</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Programming_language" title="Programming language" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">programming language</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">developed by</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Google" title="Google" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Google Inc.</a><span style="line-height: 13px;"> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">The initial design of Go was started in September 2007 by</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/w/index.php?title=Robert_Griesemer&action=edit&redlink=1" class="new" title="Robert Griesemer (page does not exist)" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(165, 88, 88); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Robert Griesemer</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Rob_Pike" title="Rob Pike" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Rob Pike</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">, and</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Ken_Thompson" title="Ken Thompson" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Ken Thompson</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">.</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">Go was officially announced in November 2009. In May 2010, Rob Pike publicly stated that Go was being used "for real stuff" at Google.</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">Go's "gc" compiler targets the</span><a href="http://en.wikipedia.org/wiki/Linux" title="Linux" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Linux</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Mac_OS_X" title="Mac OS X" class="mw-redirect" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Mac OS X</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/FreeBSD" title="FreeBSD" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">FreeBSD</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/OpenBSD" title="OpenBSD" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">OpenBSD</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">and</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Microsoft_Windows" title="Microsoft Windows" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">Microsoft Windows</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">operating systems and the</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/I386" title="I386" class="mw-redirect" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">i386</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">,</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/Amd64" title="Amd64" class="mw-redirect" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">AMD64</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">, and</span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><a href="http://en.wikipedia.org/wiki/ARM" title="ARM" class="mw-redirect" style="font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; text-decoration: none; color: rgb(11, 0, 128); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; ">ARM</a><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; "> </span><span style="background-color: rgb(255, 255, 255); font-family: sans-serif; font-size: 13px; line-height: 19px; text-align: -webkit-auto; ">processor architectures.</span>"<div><br /></div><div><br /></div><div><b>Hello World sample code:</b></div><div><pre class="de1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: white; border-right-color: white; border-bottom-color: white; border-left-color: white; border-image: initial; background-color: rgb(249, 249, 249); line-height: 1.2em; font-size: 13px; margin-top: 0px; margin-bottom: 0px; background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; vertical-align: top; text-align: -webkit-auto; "><span class="kw1" style="color: rgb(177, 177, 0); font-weight: bold; ">package</span> main </pre><pre class="de1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: white; border-right-color: white; border-bottom-color: white; border-left-color: white; border-image: initial; background-color: rgb(249, 249, 249); line-height: 1.2em; font-size: 13px; margin-top: 0px; margin-bottom: 0px; background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; vertical-align: top; text-align: -webkit-auto; "><span class="kw1" style="color: rgb(177, 177, 0); font-weight: bold; ">import</span> <span class="st0" style="color: rgb(204, 102, 204); ">"fmt" //text formatting package</span> </pre><pre class="de1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: white; border-right-color: white; border-bottom-color: white; border-left-color: white; border-image: initial; background-color: rgb(249, 249, 249); line-height: 1.2em; font-size: 13px; margin-top: 0px; margin-bottom: 0px; background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; vertical-align: top; text-align: -webkit-auto; "><span class="kw4" style="color: rgb(153, 51, 51); ">func</span> main<span class="sy1" style="color: rgb(51, 153, 51); ">()</span> <span class="sy1" style="color: rgb(51, 153, 51); ">{</span> </pre><pre class="de1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: white; border-right-color: white; border-bottom-color: white; border-left-color: white; border-image: initial; background-color: rgb(249, 249, 249); line-height: 1.2em; font-size: 13px; margin-top: 0px; margin-bottom: 0px; background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; vertical-align: top; text-align: -webkit-auto; "><span class="Apple-tab-span" style="white-space:pre"> </span>fmt<span class="sy3" style="color: rgb(51, 153, 51); ">.</span>Println<span class="sy1" style="color: rgb(51, 153, 51); ">(</span><span class="st0" style="color: rgb(204, 102, 204); ">"Hello, World"</span><span class="sy1" style="color: rgb(51, 153, 51); ">)</span> </pre><pre class="de1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: white; border-right-color: white; border-bottom-color: white; border-left-color: white; border-image: initial; background-color: rgb(249, 249, 249); line-height: 1.2em; font-size: 13px; margin-top: 0px; margin-bottom: 0px; background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; vertical-align: top; text-align: -webkit-auto; "><span class="sy1" style="color: rgb(51, 153, 51); "><span class="Apple-tab-span" style="white-space:pre"> </span>}</span></pre></div><br /><b>Go and EZ-Metrix:</b><div>Because the Go language specification defines both a single-line comment delimiter (//) and a multi-line comment delimiter set (/*, */), EZ-Metrix has no trouble measuring the size of Go source code.</div><div><br /></div><div><b>Conclusions:</b></div><div>If you're using Go on your next programming assignment (or inherited someone else's Go source), "Go" ahead and measure its size with EZ-Metrix. A free evaluation of EZ-Metrix is available at www.ez-metrix.com.</div><div><br /></div><div><b>More:</b> </div><div>Additional information about Go can be found at the official Go website: http://golang.org/ </div>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-26421797576333143862011-07-29T06:22:00.000-07:002011-07-29T06:32:14.751-07:00Mil & Aero Magazine features EZ-MetrixIn a July 5, 2011 article, author John Keller lists the company that invented EZ-Metrix<sup>®</sup>, James Heires Consulting, Inc. in an article about software verification tools.<br /><br />"Because code counters like EZ-Metrix are routinely used in highly analytical tasks such as software verification, it stands to reason that the Military and Aerospace industries are interested in EZ-Metrix", said President James Heires, PMP.<br /><br />The full Military & Aerospace Magazine article entitled: "Mathematical proof techniques, automated requirements tracing lead trends in software verification tools" can be read in full here: (http://www.militaryaerospace.com/index/display/article-display/9346321286/articles/military-aerospace-electronics/exclusive-content/2011/7/mathematical-proof.html)James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-45937406901360159612011-07-26T15:29:00.000-07:002011-07-26T15:39:03.855-07:00EZ-Metrix now available on Download.com<span class="Apple-style-span" style="color: rgb(53, 53, 53); font-family: Arial, Helvetica, san-serif; font-size: 12px; "><h1 style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; font-size: 15px; vertical-align: baseline; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; color: rgb(204, 0, 0); font: normal normal bold 124.5%/normal Arial, Helvetica, sans-serif; text-transform: uppercase; clear: both; position: relative; background-position: initial initial; background-repeat: initial initial; ">WELCOME TO UPLOAD.COM</h1><br />You have arrived at the most powerful trial software promotion service available anywhere. Serving over 27,000 publishers, representing 35,000 products and 132 countries around the world, our product library generates over 2.5 million downloads each day. This unmatched exposure comes from powering a growing network of download distribution sites, which reaches a combined total of over 38 million unique users per month.</span><div><span class="Apple-style-span" style="color: rgb(53, 53, 53); font-family: Arial, Helvetica, san-serif; font-size: 12px; "><br /></span></div><div><span class="Apple-style-span" style="color: rgb(53, 53, 53); font-family: Arial, Helvetica, san-serif; font-size: 12px; "><br /></span></div>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-78889639954280617122011-07-25T08:29:00.000-07:002011-07-25T08:33:05.566-07:00EZ-Metrix now available on Brothersoft<p align="center" style="margin-right: 0.5in; margin-left: 0.5in; text-align: center; font-family: 'Times New Roman'; font-size: medium; "><b><u><span style="font-size: 13.5pt; font-family: Helvetica; ">EZ-Metrix</span></u></b><b><sup><span style="font-size: 13.5pt; font-family: Helvetica; ">®</span></sup></b><b><span style="font-size: 13.5pt; font-family: Helvetica; "> is a source code metrics utility with a difference!</span></b></p><p align="center" style="margin-right: 0.5in; margin-left: 0.5in; text-align: center; font-family: 'Times New Roman'; font-size: medium; "><b><span style="font-size: 13.5pt; font-family: Helvetica; ">It's like a tape measure for your software... <img border="0" width="120" height="73" id="_x0000_i1028" src="http://www.jamesheiresconsulting.com/tape_measure.gif" alt="EZ Metrix Source Code Counter" align="middle" /></span></b></p><p align="center" style="margin-right: 0.5in; margin-left: 0.5in; text-align: center; font-family: 'Times New Roman'; font-size: medium; "><span style="font-family: Helvetica; ">With an easy Internet-based interface, multiple language support and flexible licensing features, you will be up and running<i> in minutes </i>with the EZ-Metrix code counter. Measure software size from virtually all text-based languages and from any platform or operating system with the same utility. Source code metrics are stored in our internal database and may be exported for further analysis. The EZ-Metrix LOC counter supports software development estimates, productivity measurement, schedule forecasting and quality analysis (CMMI, ISO).</span></p><p align="center" style="margin-right: 0.5in; margin-left: 0.5in; text-align: center; font-family: 'Times New Roman'; font-size: medium; "><span style="font-family: Helvetica; ">FREE 30-day trial available at www.ezmetrix.com</span></p><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Verdana; font-size: 11px; line-height: 15px; "><p style="text-align: left; font-size: 11px; line-height: 15px; "><b style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; list-style-type: none; list-style-position: initial; list-style-image: initial; ">BrotherSoft</b> served the customers as one of the leading software download website worldwide since July 2002. Over 250,000 freeware and shareware are for free download which covers 7 channels including Windows, Mac, Mobile, etc. There are more than 10,00,000 downloads every day on our site.</p><p style="text-align: left; font-size: 11px; line-height: 15px; ">Multi-language portals including Japanese, German, Russian, French, Spanish to meet the software need of Non-English speaking country customers.</p><p style="text-align: left; font-size: 11px; line-height: 15px; ">Since 2008, we implemented Akamai’s Electronic Software Delivery and Dynamic Site Accelerator solution with globe servers in more than 60 countries worldwide to keep high-speed download.</p></span>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-68071579872092142472009-10-03T16:12:00.000-07:002010-04-09T05:59:38.690-07:00EZ-Metrix to be featured on Quality Conversations<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8nleDMTQYNYz50NL6RNLFJ72kpdIGwxsYhdeRs-6K9A-4O7nXUsssoLLAcR4Ya8cvtTj4MD-pp790kJjr8yBEBukbpUgcO4Pui0Gng4bnv7TpXVXCrXev3mx1WJv5OIgpkLA8eqFgiSw/s1600-h/Steve_Wilson.JPG"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 124px; height: 200px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8nleDMTQYNYz50NL6RNLFJ72kpdIGwxsYhdeRs-6K9A-4O7nXUsssoLLAcR4Ya8cvtTj4MD-pp790kJjr8yBEBukbpUgcO4Pui0Gng4bnv7TpXVXCrXev3mx1WJv5OIgpkLA8eqFgiSw/s200/Steve_Wilson.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5388518864052242018" /></a><br />Steve Wilson, a colleague and fellow measurement practitioner, hosts a radio program called <span style="font-weight:bold;">Quality Conversations: The Global Voice of Quality</span>. Mr. Wilson's program is available on the <a href="http://www.blogtalkradio.com/QualityConversations">Blog Talk Radio</a> website. Steve has hosted many notable experts in the quality industry in the past, and hosts a website called <a href="http://www.qualitybydesign.biz/page/page/5970585.htm">Quality By Design</a>.<br /><br />Now, EZ-Metrix gets the spotlight, in a show entitled <a href="http://www.blogtalkradio.com/QualityConversations/2009/10/24/EZ-Metrix-A-web-based-code-counting-utility">EZ-Metrix: A Web-Based Code Counting Utility</a>. Steve and I will discuss software quality, how metrics can support a software quality initiative, and why software size measurement is missing from most Fortune 500 companies' Key Performance Indicators. And finally, how EZ-Metrix can help to fill the void left by these complex industry dynamics.<br /><br />This is a recorded show, and is available for immediate download <a href="http://www.blogtalkradio.com/QualityConversations/2009/10/24/EZ-Metrix-A-web-based-code-counting-utility">here.</a><br /><br />Looking forward to your comments, questions and <span style="font-style:italic;">quality conversations</span>.<br /><br />Regards,<br />JamesJames T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-37187784421111050452008-10-17T05:59:00.001-07:002008-10-17T05:59:24.700-07:00FW: TechRepublic Blogs: 10 questions to ask before migrating to LinuxFrom: James T. Heires, PMP [mailto:<a href="mailto:jtheires@netins.net">jtheires@netins.net</a>] <br>Sent: Thursday, October 16, 2008 10:09 PM<br>To: James Heires<br>Subject: TechRepublic Blogs: 10 questions to ask before migrating to<br>Linux<p> <p><a href="http://blogs.techrepublic.com.com/10things/?p=424">http://blogs.techrepublic.com.com/10things/?p=424</a> <p>No virus found in this incoming message.<br>Checked by AVG - <a href="http://www.avg.com">http://www.avg.com</a><br>Version: 8.0.173 / Virus Database: 270.8.1/1730 - Release Date:<br>10/17/2008 8:07 AMJames T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-89683001037921421132008-07-25T18:46:00.000-07:002008-07-25T19:25:11.874-07:00EZ-Metrix v4.1 Ready Now!The latest and greatest EZ-Metrix is now ready for <em>immediate </em>enjoyment...<br />Our development team has worked hard or weeks to bring you the latest product enhancements.<br />EZ-Metrix now boasts the following new comparison mode features:<br />1. Detailed line counts are now reported for added files<br />2. Detailed line counts are now reported for deleted files<br />3. Counts of changed lines of code and comments are more accurate than ever<br />4. Performance is up to 10% faster than v4.0<br /><br />We hope these changes make your work more productive and efficient. Drop us a line when you have a chance to look over the new version - we love to hear from users.James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-52701933141150438832008-07-18T06:25:00.000-07:002008-07-18T06:32:08.651-07:00EZ-Metrix enhancements coming soon.The next release of EZ-Metrix (v4.1) is now under development. Included in this release are two changes that are sure to please most users.<br /><br />1) Comparison line counts for added and deleted files. This new feature will report measures for all comparison categories, if a file is either added or removed from a baseline list. In other words, if a file is added to an existing list of files, for example, then EZ-Metrix will report how many files, lines of code and comments were added.<br /><br />2) Comparison changed lines more accurate. A combination of factors may be encountered that could throw off EZ-Metrix' code counting engine, resulting in changed line counts that are incorrect. This enhancement will correct this situation, so that changed counts are correct.<br /><br />We hope you value these changes, and become a better practitioner, as a result.<br /><br />As always, keep those cards and letters coming - we value your feedback!<br /><br />Regards,<br />The EZ-Metrix team.James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-35179471740187935032008-02-12T05:43:00.000-08:002008-02-12T05:50:27.940-08:00Updated EZ-Metrix User Guide and Admin Guide available.Commensurate with the v4.0 release of <a href="http://www.jamesheiresconsulting.com/Products.htm">EZ-Metrix</a>, we have made available updated versions of the User Guide and Admin Guide. <p>These documents are available on the <a href="http://www.ezmetrix.com/downloads/EZ-Metrix v4.0 User Guide.pdf">EZ-Metrix</a> website now, and should be consulted for general how-to information, as well as in-depth discucssions of metrics definitions and how to analyze the results you get from EZ-Metrix.<p><br />Enjoy!<br />-- the EZ-Metrix teamJames T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-13737681345549854252008-02-03T20:31:00.000-08:002008-02-13T06:02:09.646-08:00EZ-Metrix V4.0 is finally here!After a long-anticipated wait, EZ-Metrix version 4.0 is finally available!<br /><br />New features in EZ-Metrix include:<br /><ul><li>Improved performance - more than 9 times faster than previous versions!</li><li>Easier to obtain a free evaluation license.</li><li>New and improved site design.</li><li>Pre loaded with rules for dozens of popular languages.</li><li>More control over user accounts, rules and reports.</li></ul><p>Come give us a try. Or if you haven't tried EZ-Metrix yet, what are you waiting for?<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0ELluhdC8R7VtPfh__riyW2VqMRXtlhyP5KVBUkKhdUzRrNOj8kl02OxXb0qJbI7sGVLC5sojkGMSVVQTu-LY9__LeJaBZTRBGEdPibPFeKAeLg91asnG3S-36ZS6QmvfmS1cpBAzRi0/s1600-h/EZM+Screen.gif"><img id="BLOGGER_PHOTO_ID_5163574741482915586" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0ELluhdC8R7VtPfh__riyW2VqMRXtlhyP5KVBUkKhdUzRrNOj8kl02OxXb0qJbI7sGVLC5sojkGMSVVQTu-LY9__LeJaBZTRBGEdPibPFeKAeLg91asnG3S-36ZS6QmvfmS1cpBAzRi0/s320/EZM+Screen.gif" border="0" /></a></p><p></p><p></p><br /><p><a href="http://www.ez-metrix.com/">ez-metrix.com</a></p><br /><br><br><br><br><br><br><br><br><br><br><br /><b>Many Thanks!</b><br />This release wouldn't have been possible without the direct involvement of Jeff, Roger, Atul, Dmitry, Mahmoud, Sajid, Humayun, and my wife <a href="http://www.slenderworld.biz/Christine.html">Christine.</a> <br>Thanks also to client feedback, this product is stronger, faster and better than ever!James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-59868343661690318072007-02-26T15:02:00.000-08:002008-01-24T05:58:10.463-08:00New Features coming...With a <em>new version</em> of EZ-Metrix in the works, it would be a good time to share some of what is coming in the next version. Although there are many improvements coming, I'll only share the BIG ones here, to keep this blog short and sweet.<br /><ol><li>Comparison measures will be approximately 9 times faster. The measurement algorithms have been optimized for speed, resulting in a much faster session, without compromising accuracy. Now, if you have a large number of files to compare, your job will be done much faster.</li><li>Non-comparison measures will be approximately 7 times faster.</li><li>Changed Lines measure (which currently includes both SLOC and comments) will be separated into two measures (Changed lines of code and Changed lines of comments). Don't worry - the legacy Changed Lines measure will be carried forward to stay reverse-compatible with earlier versions...</li><li>A set of rules will come pre-configured on all new accounts, saving you the trouble of having to create rules for every programming language you need. The default rule set will include dozens of popular languages supported by EZ-Metrix, which again, will make your job easier.</li><li>Rules can be deleted (Admin only). This allows you to reduce the list of supported languages, or to remove an erroneous rule. Since rules are shared across all accounts at a company, this feature is limited to your Admin only.</li><li>Restrict Database Purge feature to Admins only. This reduces the likelihood of accidental purging of your data.</li><li>Redesigned UI. The aim here is to clean up the interface, and make it easier to use.</li></ol><p>We hope you enjoy these new features. Please keep the suggestions coming, since we do listen to your feedback when we implement improvements to EZ-Metrix. Your suggestions count!</p><p>Regards,</p><p>James</p><p></p>James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com0tag:blogger.com,1999:blog-8635747923161566980.post-52501223890392845642007-01-22T15:10:00.000-08:002007-01-22T20:49:01.359-08:00Welcome to the EZ-Metrix® blog!<span style="color:#ffff00;"></span><br />Dear <img id="BLOGGER_PHOTO_ID_5023079558499247218" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" height="123" alt="" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuK8MyFxfSn8a-I5qUO-OMj3kh7CMt6sZALigx38O7plmycs5z3swN99LDnJhhlt904LrX945Pb8ruSBAeJUl9xdyoA7ZEBwAOSqpKckqa3r9UbkaqF0P5USXbpWPjvGPdZa3fB-lr0DQ/s320/EZ-Metrix+logo.jpg" width="191" border="0" /><span class="blsp-spelling-error" id="SPELLING_ERROR_0" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_1" onclick="BLOG_clickHandler(this)">Metrix</span> friends,<br /><br />Welcome to my brand new web log! I'm glad you are interested enough to visit and hopefully contribute to the discussion. The purpose of this blog is to discuss the <a href="http://www.ez-metrix.com/"><span class="blsp-spelling-error" id="SPELLING_ERROR_2" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_3" onclick="BLOG_clickHandler(this)">Metrix</span></a> product and related topics.<br /><br /><span class="blsp-spelling-error" id="SPELLING_ERROR_4" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_5" onclick="BLOG_clickHandler(this)">Metrix</span> was conceived and developed and is owned by James <span class="blsp-spelling-error" id="SPELLING_ERROR_6" onclick="BLOG_clickHandler(this)">Heires</span> Consulting, Inc. You can read all about the product <a href="http://www.jamesheiresconsulting.com/Products.htm">here</a> or buy it <a href="http://www.jamesheiresconsulting.com/Order%20Form.htm">here</a> (you can also get a <strong><em><span style="color:#ff0000;">FREE</span></em></strong> evaluation license) !<br /><br /><span class="blsp-spelling-error" id="SPELLING_ERROR_7" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_8" onclick="BLOG_clickHandler(this)">Metrix</span> is a web-based code counting utility for people who develop software professionally. Used by developers, consultants and managers alike, <span class="blsp-spelling-error" id="SPELLING_ERROR_9" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_10" onclick="BLOG_clickHandler(this)">Metrix</span> is instrumental when used as part of a software measurement program, or to simplify the job of the software project manager. Estimation and project tracking are both facilitated with software size measurements. <span class="blsp-spelling-error" id="SPELLING_ERROR_11" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_12" onclick="BLOG_clickHandler(this)">Metrix</span> helps answer the question: "How much software has been developed (or tested, verified, released)?"<br /><br />If you are an <span class="blsp-spelling-error" id="SPELLING_ERROR_13" onclick="BLOG_clickHandler(this)">EZ</span>-<span class="blsp-spelling-error" id="SPELLING_ERROR_14" onclick="BLOG_clickHandler(this)">Metrix</span> user, please use this blog to discuss enhancements, observations or defects, since I will be monitoring this space for helpful feedback on the product. Please keep it clean and focused - this is a moderated blog, after all...<br /><br />Thanks,<br />James T. Heires, PMP<br />President<br />James Heires Consulting, Inc.<br />Home of EZ-Metrix code counting utility<br />"<em>Size matters after all</em>"<sup><span style="font-size:78%;">TM</span></sup><br /><br />EZ-Metrix<sup><span style="font-size:78%;">®</span></sup> is a registered trademark of James Heires Consulting, Inc.James T. Heires, PMPhttp://www.blogger.com/profile/13899750206934500213noreply@blogger.com3