December 9th, 2007
A very articulate blogger has written a great FireFox review FireFox is everywhere that is worth sharing with your friends who have not switched yet and may convince them. Plus you should read it, if for no other reason, to see photgraphic evidence the Fortean cryptozoological legend the “Sweater Kittens” may actually exist.
Posted in Cryptozoological, FireFox! OutFoxing IE, Fortean Topics | No Comments »
December 9th, 2007
I have a lot of love for the VSNETCodePrint Add-In. Besides Resharper there is no more important tool for the many rounds of Code Review teams should regularly do for QA, potential refactoring and redesign.
As an idealist and optimal thinker, I have even more ambitious ideas about what would make it even better specifically the inclusion of versioned Repository printing and code metrics beyond the current feature set of most Code Metrics tool. Such a product could command a higher price tag, and provide some basic features every Code Metric Tool seemed to omit.
A more complete listing of my ideas:
- The ability to printout SourceSafe repositories, (this would pave the way for CVS and Subversion and SourceVault Team Vstudio) with some history of file activity, summary, metrics, and detail info. Grouping by users and suggesting cleanup options would be great. The ability to print out the difference between 2 projects, solutions, folders, websites, or classes. (A lot like Redgates SQLCompare for .net projects). SourceSafe has reports - of the very poor to mediocre quality that the rest of the product embodies.
- I looked at various Code Metric tools and even the best are limited in the types of useful metrics provided, poor quality, and shallow in both substantive so I hope VSCodePrint.net tackles the Code Metrics field with the same thoughtful quality approach they take towards their current fabulous product.
- I was very disappointed by the Code Metrics tools that exist, RSW, NDepend, etc. for not providing the kind of data managers and/or Lead Coders / Architects need. The way the Metric Tools handle web sites (or do not handle at all) is shameful. Websites are a powerful delivery mechanism that is fundamentally shifting how we disseminate info and do commerce, and they should have top notch printing and code metrics support for it.
In terms of types of statistics and metrics hopefully a future VSNetCodePrint will include Statistics about the project specifically:
- Lines of code total, grouped and summarized for whole team, then broken down by team member responsible for each.
- Cyclomatic Complexity of code
- Breakdown by class types including static classes, non static classes, abstract, classes with virtual methods,
- .net Objects Use (Object used - # of calls)*
- API Calls (API used - # of calls)
- Known 3rd Party objects used**
- Attributes used and Indexed
- Interfaces (built-in) explictly used
- Interfaces (created for this program) explicitly used
- Generics used
- Unused/Dead Code
- Duplicated Files (DLLs and .ascxs in \Bin directory for pp Domain issues come to mind)
- UML diagrams of classes, inheritance diagrams.
- Relevant stored procedures and/or packages.
- FX/Cop Reports
* .net Runtime objects used could show the version of the FrameWork it was introduced in. This would be an easy way to determine if people were using new features in the .net runtime or just writing old code in a new version.
** It would be nice if each .net and 3rd party object was listed with version numbers. This would simplify determining how much they were using 3rd party products and how often they were called. For example EasyListbox, Telerik, the MS App Blocks, Log4Net, NHibernate may have been included in a project but barely used such reports could expose that. It also could help see if a 3rd Party tool is swapped out how much work is needed and recoding.
Non-Controversial Bad practices could be reported i.e.
- Code without Finally that need it, new operator not inside try blocks
- throw(ex) that should be throw
- catch with empty code blocks
- Functions and methods without XML comments
The ideal way to do this is a editable rule engine so we could add new rules, over-ride or suppress existing ones based on our needs.
Asp.net only features could include
- HTML info, Types of Controls used i.e. n User Controls, n Server Controls, n WebParts.
- Also it should group these metrics per project, per solution and/or per IIS root.
WebForms/WPF only features (some Form Printing, etc.)are on a MindMap I made I will send to StarPrint2000 soon.
The other thing is that I think a standalone EXE that can print all this that could be used instead of an add-in would allow
people without VStudio to get a printout (think managers, QA or administrative people printing, assembling and binding the printout for coders on machines without Vstudio, people who have a version of VStudio different from what the project was created in and just want to print BEFORE even thinking about importing for various reasons).
It also could be a quicker way to print in terms of allowing more RAM since VSNetCodePrint would not have to share RAM with a VisualStudio instance. t would also mean the non-addin version would not run into the “issues” that Jamie Cansdale did with the Express SKUs of Visual Studio.
I actually contacted the author of VSNetCodePrint with this idea and will be giving him input into what detailed kind of reports the above suggestion entails. My code reporting ideas will be in the form of MindJet MindMap files, my favorite format for brainstorming and organizing large projects. Maybe, if I am lucky, I will get to be a tester for these new VSNETCodePrint features. I am alpha testing Trillian Astra and it is neat to see a product early, gain experience, and if the vendor is agile contribute feature ideas, not just bug reports. In the last 25+ years in the computer field, I have many fond memory of many beta and alpha tests.
Posted in ASP.net, C#, Code Metrics, VB.net, VSNetCodePrint, VSS; Visual Source Safe, Visual Studio, General | No Comments »
December 9th, 2007
StarPrint2000.com really made a heck of a program when they invented VSNetCodePrint. Besides ReSharper, it is the most important Visual Studio add-in one can own. I was using it to print a large Website solution this weekend.
Basically it can print the dozens or hundreds of files that make up a project, solution or website in one step to printer, or file (PDF for example) - something Visual Studio just won’t do.
It not only indents very well it does a gorgeous job of placing long code lines onto multiple lines, and an elegant line numbering approach that handles the visual splits great.
Brackets and C# structures are connected with gorgeous connecting lines, so it is clear what is connected to what without scrunching up your eyes and engaging you brain.
It features a Table of Contents, and an Index (that is right an index!) in the back that lists every method, function, etc. and pinpoints the page and line it appeared on.
The support for VSNetCodePrint is excellent too. When you do run into a bug, and send an automated report, it results in correspondence for clarification, and if needed, a fix, lightning fast. This is very much unlike the “black hole” at Microsoft error report central that if you ever received a response to it would be the basic of legends…
I think everyone Visual Studio coder and manager should own VSNetCodePrint. StarPrint2000 did a heck of a job in taking pretty printing code to the next level.
Posted in C#, Resharper, Team Visual Studio, VB.net, VSNetCodePrint, Visual Studio, General | No Comments »
December 9th, 2007
In the last 28 years of using and programming computers (Timex Sinclair Spectrum, Osbornes, IBM Clones, Macs) I have participated in quite a few alpha test and beta test programs. Here is the list:
- Trillian Astra (alpha-testing now).
- ASP.net back in 1999 when Mark Anders showed it to me, and even Asp Connections and PDC folks had not seen it. In those days:
- C# was un-named, and nicknamed Cool.
- They thought they would call the .net Framework was going to be named “COM+ 2.0″. I have poker chips from that meeting with the phrase “COM+ 2.0 bet on it”.
- They were going to call ASP.net ASP+, and User Controls were to have the name “Pagelets”.
- The embryo “My Web Apps” that ran in a local sandbox and offline that would eventually mature and become SilverLight was shipped undocumented in 1.0 (they pulled the documentation they showed me). It consisted of a family of objects including Isolated Storage and some simple tools to run GUI controls in browsers that could run offline.
- LinQ for entities was slated for ASP.net 1.1 (wow that took a while to ship didn’t it)
- The first SQLServer capable Lyris.
- IDC/HTX query files.
- ASP Classic back when it was named Denali in 1996 and Unix ruled the web server world. At 1.0 time 15seconds.com and I were the only email lists, and sites devoted to this new technology, and ServerObjects.com would be one of the first vendors.
- dBase IV (which I knew was a joke compared to the amazing FoxPro I was using)
- FrameWork IV
- the FRED Developers LLI Toolkit
- Quattro-Pro for DOS
- Sprint for DOS
- Turbo C++ Compiler 1.0
- True Basic 2.0
I also was a technical writer who contributed to some of the documentation for an early beta of MitemWeb, although most of my writing for MitemView was for the Visual Basic and PowerBuilder version not the web version. Ah, Framemaker, a word processor I learned really well to get out MitemView docs and to produce what I consider a very thoughtful index compared to most of the indexes I see in programming reference manuals. FrameMaker’s conditional text feature was particularly amazing to make it possible to have PowerBuilder and Visual Basic code samples in one document and just change a variable and print either version.
I was responsible for the complex layout or the Hammerly Quick Basic Tools documentation (now distributed by TerraTech) using WP 5.1 for DOS. I am not a Quick Basic fan preferring True Basic or Visual Basic 4 and up. The first time I looked at VB seriously was version 4 when DAO appeared in the product, I ignored versions 1-3.
Posted in ASP.net, Beta Software, C#, Charles, Charles Carroll;Charles Mark Carroll;Charles M. Carroll, Framework by ForeFront, Spreadsheets, Trillian, VB.net, Word Processing | No Comments »
December 8th, 2007
I use Thornsoft Clipmate every day, and consider it to be invaluable.
It is a great way to scroll through all past things I cut to clipboard and paste them and even survives a Windows reboot and still remembers everything in the clipboard. Clipmate is better than the competitors I looked at (a few years ago):
- Yankee Clipper
- ClipBoard Manager by Honza Zeman
- Clipboard Box by DreamFly
- the lame Microsoft Office clipboard
But people need more than just a few features for their bucks these days, they need a world class product. Clipmate is a great idea and its competitors are so bad and mediocre it is the best choice for most people “the one eyed king of blind clipboard software”. But it is far from being the best kind of product on an ideal optimal scale it could be. If they implement most of the stuff I say here sales could really increase exponentially - these are the right kind of features that are not elastic, but fit their ideal personas who own it now, or want to own something like what they have now, but needs even more for the $$ than merely what ships now.
Clipmate Upgrades really screwed up. Clipmate is a great idea. However it is missing a lot. Rather than revamping great ideas, and tackling the right Goals and involving Interaction Designers to make a smoother product. Rather than adding enough features that fit their daily use personas to become a World-Class product — instead they just piled on features, elastic features for elastic users, like a Dog’s Breakfast. Some of their best features could be easier to find and use if they provided better Interaction Design.
First of all its interface is task driven rather than goal driven. Snag-It is a great example of a goal driven interface when compared to say Hypersnap DX or Clipmate. The people who make Clipmate need to read Alan Cooper’s Inmates are Running the Asylum and About Face 3.0 book very bad and actually use it to redesign the entire product. Their are way too many menus, way too many preferences, far too much noise instead of signalw edge cases prominent everywhere, and way too many steps to do tough things the product should help us do. Plus they don’t use their screen space very well in normal or Classic mode, a redesign is needed.
Second it is missing some really important features:
- categorizing/tagging clips into groups by default (programming code from __ language, clip from __ application, email address, web link, HTML, SQL, etc.) Such default tags would simplify browsing. We should also be able to write filters to autotag clips. Ideally programming language clips would be color-coded and if Clipmate folks want to save time they could just piggyback on TextPad’s syntax coloring files or some such.
- Automatic TinyURLs*, Automatic Amazon Web Service Integration*, Google Maps Integration, basically a mashup preview engine driven by values in the clipboard. This would work particularly well with Tags feature above.
- Counting duplicate clips and keeping the frequent ones easy to access with an IME/FEP approach. Think Opera Speed Dials or FEPs / IMEs choice mechanisms.
- Sharing clips with others over the web easy.
- Libraries of art clips handy on the web.
- Needs more cleanups beyond just “Strip Out Non-Text DataFormats”. Specifically “Office to simpler HTML”‘,”Multiline Address to 1 Address cleanups”, (great for Google Maps) would be nice.
- Simple conversions built-in (CVS to Excel, MS-Office to OpenOffice, Graphic Format Conversion, etc.)
- The 20% of Snag-it and HyperSnap DX features people use 80% of the time. Window/Dialog captures and scrolling captures come to mind. The one feature all screen shot programs need to do better is website crawls. Imagine you pointed it a website and it showed you a checklist of every internal link it could follow then it allowed you to check all or some for scrolling page printing.
- Error message grabbing would be nice like I talk about here.
- A “paste choose” feature would be great. A tiny FEP with numbered choices, a dropdown for tags, a tab for Searches would be ideal. And a nice dropdown for “special pastes”.
- Integration with XML MicroFormats.
- Ability to convert a clip into a Named password with * masks and stored encryted heavily would be great.
- Macro-type facilities would dovetail well with the contents of clips. See the excellent AutoIT macro programming facility for the kind of thing we would need.
- Interactive clips that would allow one to answer a prompt or 2 and build a dynamic clip.
* It would be nice if these newer features could be structured as “eat your own steak” (I hate the phrase “eat your own dogfood”) simple plugins and great promotion for FREE add-ins (hopefully following the FireFox model rather than the IE model). I would for example love to have a Qwerty text to Dvorak text converter (for when people turn off my”Dvorak Lock” button on my keyboard and I type a long phrase before I realize it, but it is such an edge case it would be nice if add-ins like it could be written in minutes not hours and accessibly.
I will continue to use Clipmate and Snag-It and IrfanView and wish some of the really great stuff I wish Clipmate would do makes it into a future version, and also that it would become much easier to use the advanced features and a few things I wish I always had will drive up sales too.
Posted in Computer Cut & Paste, Reviews | No Comments »
December 6th, 2007
Rilo Kiley is fantastic. They really are one of the best bands to hit the Rock scene in a long time.
- Jenny Lewis (vocals, keyboards, guitar)
- Blake Sennett (guitar, vocals)
- Pierre de Reeder (bass guitar, keyboards, vocals)
- Jason Boesel (drums, percussion)
Here is a series of live performances to give you a taste for the quality of their music.
Part 1: More Adventurous, Portion for Foxes,
Part 2:
Part 3
Part 4
Part 5
Part 6
Jimmy Kimmel performing DreamWorld
Posted in Jenny Lewis, Music Videos, Rilo Kiley | No Comments »
December 6th, 2007
One behavior could be learned and situation specific, not habitual, and even be a 1-shot incident every few months or years. Observation of this behavior does not entitle you to claim the person doing it as having narcissist disorder credibly. Bipolar, Obsessive, Borderline, Narcissist, heck whole families of behaviors and disorders can be learned, imitated, and practiced occasionally by people who are not afflicted with them. Just as riding a bike does not make you Lance Armstrong and playing Golf does not make you Tiger Woods, doing something occasionally does not make you a serial offender. Although your detractors would like others to think that you are a serial offender.
Posted in ADDHD, Asbergers, Bad Behavior, Bipolar, LMT: Life Management Tools, Narcissism, Psychology | No Comments »
December 6th, 2007
I have a pet peeve I would like to see deracinated from human behavior — people who diagnose others without the background or credentials, just from reading an article(s) or book(s) or anecdotal experience. Let us just call this
“Diagnosing without credentials, correctness, a clue or evidence (DWCCCE).”
Regular people, teachers, principals, counselors at schools often state this child has ADD or ADDHD or Asbergers or is Bipolar or has clinical depression or other conditions and disorders as if it was a fact. Then the parents or friend are asked (and pressure exerted) to take full actions on such diagnoses including medicines. The same individuals act as advocates and salespeople/champions try to lead professionals to their pre-judged conclusions because they over weigh their guess. Many teachers, principals, counselors lack the training, the latest research, and/or diagnostic tools to conclude the cause and full diagnosis of the symptoms, and to definitively ascertain whether it is a character disorder versus a cluster of behaviors or a serial practice of behaviors.
The root of it is a common logical fallacy that noticing one or more symptoms and/or behaviors is assurance the person has the full blown condition and it is a disorder rather than a collection of learned and/or imitative behaviors. There are some fallacies with this:
The behaviors can exist without the person having the condition that creates the behavior. While that is an edge case, it is a very real possibility. People learn behaviors and mimic actions of those around them, so a person’s behaviors may reflect close physical or emotional proximity to people with that condition, and not necessarily having the condition themselves.
Some people are great at being high functional and/or concealing the extent of their behavior or the depth it pervades their character. They may have compensating and camouflage mechanisms that make them so likeable and may overshadow their traits or behavior with some sterling qualities that make one hesitant to criticize them as well.
Mild forms of these behaviors or personality disorders do not warrant or may not even respond well to the extensive treatment full blown cases may need. Plus medicating or applying therapeutic behavior modifications (”pill or skill”) to mild cases may not be worth the side effects, and given the dicey and crude nature of modern psychiatric medicine and cognitive therapy and neuro-linguistic programming the costs way outweigh the benefits.
When people display symptoms it is easy to lose faith, or to jump to conclusions but take the Road Less Travelled and focus on improving yourself and sphere of influence. Keep in mind professionals and mindful professionals and professionals with very up-to-date accurate domain knowledge diagnose accurately. Others diagnose ANYWAY and most of the time are wrong. “Its Hard” as the Who would say in one way, and Scott Peck would say in another way.
One public figure who uses diagnoses that are not entirely accurate is Dr. Phil, who uses Rapid fire Diagnosis as a form of Reality Therapy and often gets the complex issues wrong, but the Reality Therapy helps shock and entertain his audience even when mixed with incorrect diagnoses. But emulating his style, with even less training than him, is a real recipe to being wrong or creating chaos and disasters.
Posted in Depression, Neuro-LingusiticProgramming | No Comments »