Mar 10 2020

Standard Log Format

There isn’t a standard log format that spans all applications. There is a Common Log Format used by web servers, and there are logging frameworks that helps in the mechanics of producing logs. Unfortunately when it comes to composing the actual message that will be written out to log files the developer is left to his own devices.

Here are some best practices that I’ve found useful when adding logs to an application I’ve working on.

  • Each log event should be written to a single line.
  • Each log event should start with an event timestamp, preferably in UTC.
  • Include the log level in the log line.
  • Add a short description about the event that is being logged.
  • Included all pertinent data about the event in name=”value” pairs.
  • Quote all data values.
  • Use and log a transaction id as requests move through your applications.
  • Be consistent about field names used across applications.
  • Add a prefix to the field name to add context, for example for input or output data.
  • Mask out passwords, credit cards, and any other Personal Customer Information (PCI) data.
  • The log file name should include the application identifier and hostname.
  • Log files should be rotated out based on time and/or size.

Feb 4 2020

Software Development Checklist

During the summer, our team usually hires an intern. We find that the interns we hire are more than capable with the technical requirements but usually need some help on process. In order to help new team members adapt our process we’ve developed a number of useful checklists of some best practices. Here are some useful checklist to go through when working on new features.

Ticket Checklist

  • Add clear and concise title and description
  • Add reproducible steps
    • Use realistic sample data
  • Add specific acceptance criteria
  • Add related tickets

Code Checklist

  • Create your own feature branch
  • Check code into your branch often
  • Merge from master often
  • Run test suites on your own branch
  • Add and update test cases
  • And and update wiki documentation
  • Add comments to ticket

New Project Checklist

  • Source
    • Git Repository
    • Dependency Management
      • Maven
    • readme.md
  • Wiki documentation
    • Design Diagram
    • API Documentation
    • Common Configuration
    • AWS Permissions
    • Technical Specifications
      • Ports
      • Hardware
    • Sample log output
    • Sample Splunk queries
  • Splunk friendly logs
    • Splunk Dashboards
    • Splunk Alerts
  • Test Cases
    • JUnit
  • Release Management
    • Bamboo Plan
    • Ansible Playbook
    • Package
      • Docker Image
      • RPM Package

Oct 18 2019

Favorite How I Built This Episodes

I’ve been listening to podcasts before every comedian had one. Back in 2007 I listed my favorite technology podcasts. One of my favorite podcast now is How I Built This with Guy Raz. Guy talks with established founders and entrepreneurs on how they got their business off the ground. The following are my favorite episodes of How I Built This because of the perseverance, determination, and humility described by the guest to launch their successful business.


Jun 7 2012

The Cost of Doing it Wrong

As the saying goes, if a thing is worth doing, it’s worth doing well. It has been proven that doing a thing right the first time is most efficient and cost effective. But what is the cost of doing something wrong? In terms of money, I’ve seen cases where something is done incorrectly and then had to redone at a loss of $100k. In terms of time, you can model it in the following thought experiment.

If a task takes x amount of time to complete and it is done wrong the first time, how long does it take to fix it?  More than 4x. It takes to x amount of time to complete the task the first time, probably at least x amount of time to find out it was done wrong, another x amount to figure out what the first guy did, and finally x amount to fix it correctly.

We all can agree that time is money and if a task is done incorrectly it may cost at a minimum as much as four times as much as it would cost if done correctly the first time around.


May 28 2012

The 80 Percent

I always give 110% to any task I set out to complete. If you ever give anything less than 100% then you get the following logic…

It’s okay if we do 80%, but the 80% needs to be done 100%… We can’t deliver 80% of the 80% we actually attempt of the 100% we are committed too.


May 16 2012

Retweet April 2012

From time to time I just blast tweets about software development, project planning, team dynamics, or whatever else comes to mind. Here is a synopsis of recent tweets and rants. If you want to follow the conversation follow me at techknow and/or juixe.

Software Development

  • Too often I’ve seen code that made me lose my lunch.
  • Sometimes source code is like the sausage factory where you don’t want to look what goes into an application.
  • One developer’s corner case is another user’s daily workflow.
  • Application logs are like money, you can always use more… Unfortunately they are like pennies, the more you have the more difficult it is.
  • Fix the problem, not the symptom. Some developers prefer to fix the symptom because they don’t know how to find the root cause itself.

Team Leadership

  • It is important to lead the way and then immediately get out of the way.
  • If it doesn’t make sense to me it is because you are not explaining it correctly.
  • Everyone has a right to their opinions but not everyone’s opinion is right.
  • Great ideas don’t belong to any one person. Great ideas are not unique to anyone. Great ideas stand on their own.
  • If you are safe in your comfort zone you’ll never be in the zone.
  • Even when I think outside the box, I am still in the zone.
  • There are no easy answers without hard choices.
  • It’s one thing to make sense and a completely different thing to be clear.
  • There are some things in life that are not meant for you to understand but to accept.

Product Placement

  • Things Apple should buy: Evernote, app TLD, Square, and my blog.
  • The Notes app on the iPhone badly needs an to support the undo and redo feature.
  • The new Google+ is the new New Coke.
  • If Google would have invented Polaroid, the film would be free but full of ads and a copy would be uploaded to the cloud.
  • Some of Google’s UI often looks and feels like the uncanny valley of design, it has a plastic aspect to it.
  • My other Tumblr is a Moleskine.
  • So much of the content I see in Pinterest seems to come from Tumblr…
  • Instagram has no ads, only available on mobile, Android support just added, not profitable, no web presence… Obviously worth $1 billion.
  • Instead of paying a billion in cash and stock why didn’t Facebook just pay a billion in Facebook Credits and likes.
  • Silicon Valley back of the envelop valuation math: Tumblr + Camera+ > Instagram therefore Tumblr + Camera+ = $10,000,000,000++.
  • I don’t understand @McDonalds economics… A whole McChicken sandwich costs $1 but ask for an extra BBQ sauce and you get charged $0.50.

Silicon Angels

  • Is it possible for the whole of Silicon Valley to jump the shark? If and when it does there will be a large splash.
  • Silicon Valley valuations are relative to previous largest valuation.
  • The Internet is paved with high valuations.
  • Frothyness is the new truthyness.
  • Frothy does a body good.

Randumb

  • I want to see the world in HD.
  • What do we want? Our way. When do we want it. All the time.
  • If someone says something that is factually untrue, it doesn’t mean they lied… It means you lied to yourself by believing it. #truth
  • One persons guest house is a other persons mansion.
  • Some people build walls, others bridges, I build BS radar detection systems.
  • Retweet, reblog, repin, remix, rinse, and repeat!
  • I think in numbers.
  • All language is a metaphor.
  • Trolls shall inherit the earth.