best practices

warning: Creating default object from empty value in /hermes/walnaweb12a/b57/moo.greydragoncom/nodsw/modules/taxonomy/ on line 33.
Leeland's picture

Securing HTTP Session

Interesting challenge:

What is wrong with these cookies?

Set-Cookie: LSID=FDDGAAK…Eaem_vYg;;
Path=/; Expires=Mon, 11-Jul-2016 10:30:11 GMT; 
Set-Cookie: SSID=Xv4P...DFGaq;;
Path=/; Expires=Wed, 11-Jul-2016 10:30:11 GMT;

I'll post the explanations from a security bulletin later.

Leeland's picture

Posting In A technical Forum

Bill Stewart has made an excellent blog post: "How to ask questions in a technical forum" ( His post will give you some pointers on how to use a forum and other peoples time and knowledge to the best advantage for all.

It is best to put the programming language / library / product you have a question concerning in the title...Windows PowerShell, HTTPDB, JIRA Wiki Syntax, etc.

Also please mark the posts as answered once they have been resolved.

Leeland's picture

A friend asked about using Dropbox vs. Carbonite

Today a friend asked me which was a better backup solution Dropbox ( if your going to sign up please use this referral URL or Carbonite ( I can see the confusion of Dropbox as a backup solution, it does kind of look like one to most folks. As long as I answered it for my friend I might as well put it out for others too. Plus I might get some nice feedback on other options.

To the serious techies (geeks/nerds) Dropbox and Carbonite are not the same solutions.

Leeland's picture

Cleaning Code Needs Good Fixed Width Screen Fonts

Programming requires the use of a fixed width (monospaced or fixed-proportional font) screen font so that all characters occupy the same width when displayed on screen. This is because some languages (Python, Scala, Java, C, etc.) depend on indention to block code together or to align up rectangular columnar blocks for code clarity.

Leeland's picture

Good Meetings

From on high a message came down at my place of work that meetings were not being dealt with well. The message included a complete description of "Meeting Etiquette" and a stern warning that we needed to "follow some protocols when it comes to business meetings."

So what to do? Well here are some things to ponder and suggestions from some respectable sources that offer the same advise I have for years (only better):

Leeland's picture

Effective Quality Software Documentation

Software quality encompasses a number of factors such as number of defects, complexity, functional behavior coverage, and usability. The higher the quality of a solution the lower the total cost of ownership (TCO) as well as the higher the return on investment. As obvious as this idea is many developers fail to consider any of it while producing a solution. In the fast past world of software engineering most people involved get caught up in the idea that motion equals progress.

Leeland's picture

Locking Up Multiple Systems

At my office we have this thing called the "Dude Protocol." When I first started working here I thought it was a neat idea to make people a little more security conscience. The procedure is that if any workstation, laptop, or terminal is left logged in but without someone sitting there using it everyone is allowed (in fact directly ordered) to pull up the email client and send an email message to the "Fun" email list with the subject of "Dude" and then to LOCK the terminal.

Leeland's picture

Dude Protocol

This is from a place I worked at. It is a really great idea so I have summarized it here in case some other place wishes to implement a similar procedure. The original work was done by a really great guy named Marc Wensauer (


A mechanism to provide an indication to a user that he or she has left a system unattended with an unprotected, active user interface.

Leeland's picture

Ancient Technology Lessons For Software Development

Many times a day I sit and wonder about why something is (or is not). (Sounds pretty Zen I know, however, it is still true.) Technology is evolving so fast as to seem out of control. Yet, there are still fundamental elements we should be following. One of these is usability.

Leeland's picture

Good URLs

Good URLs are a great thing. I am trying to make them come out here. In running around to find the right mix of code to make them nice I ran over this excellent article on "Best URLs". Since I agree with it entirely, and cannot think of anything to add to it just going to reference it and say "ditto". Also in the interest of vanishing Internet resources and articles I include the complete article here (with permission from Gary Love granted on 9/24/2010):

Leeland's picture

Re-evaluating Project Requirements

In developing project criteria/use cases/stories a certain point is reached where it is concluded that "enough" has been done and the results are "good" to begin work. Which is to say that the requirements are "good enough."

It is not unusual to wonder, after work begins, if the information really was good enough. It is worth re-evaluating the requirements once a little effort has been done. This helps to flush out missing details. A reasonable set of questions to ask are:

  • Were any important variables missed in collecting the data used to produce the requirements?
Leeland's picture

Try Looking at Your Own Legacy Code

Just had a reason to open up my code archives. Not a big deal, just checkout the older stuff from the Subversion archives and add some new Eclipse projects.

Lions, tigers and bears oh my. What the heck are all those warnings!?

Leeland's picture

Where should exceptions go?

Lets talk about exceptions for a moment. At the office a discussion came up that essentially was about if we should group our exception objects together into a single module/subsystem wide package or have them called out in the packages next to the code they were used by.

Personally I think packages specific to exceptions are bad ideas because it detaches them from the business objects they are supposed to be supporting. An exception should represent the possible result of a direct action on a domain object. I think they should be subsystem/object specific.

Leeland's picture

None repentent process freak

Honestly I am getting real tired of dealing with developers who seem to feel the need to rebel against any change in their thinking process. I have no problem taking classes, seeing something I haven't tried before and if I feel it might be helpful being willing to give it a solid try for a few cycles. And I fully admit it that I am an unabashed process freak.

Thread Slivers eBook at Amazon

Syndicate content