Normalize your Database to minimize risk.

Database normalization is a concept defined by an IBM computer scientist in E.F. Codd in 1970.

Normalization is achieved by following the rules of first normal form through sixth normal form.

Now for the good stuff. Normalization is used to reduce errors and dependencies within your database. By designing your database to follow the normal forms, a database is more flexible, easier to maintain and less likely to have data related errors (due to dependencies) later.

I have spent a large amount of time looking for a resource that can simplify the concept enough for a layperson, but technical enough to actually walk someone through the process. I recently assisted an intern in understanding this concept.

After many attempts, the all-around best resource was a Lynda.com course titled:
“Foundations in Programming: Databases” Chapter 5. Database Modeling: Optimization.

Comments are welcome: If you have any other resources that clearly explain the concept of Normalization, I’d be glad to hear about them.

Coderbits: better than a resume for IT professionals

My IT guy at work shows me websites all of the time. Some are really cool, some are really helpful and some… Well, some are just to good to not share.

The site I want to share is called coderbits.com. It’s a website (currently in beta) designed to track various social networks, user forums and software training sites and aggregate your personal participation in a single location. This can be used by prospective employers to verify your coding skills match what’s listed on your resume! In the last few weeks, I’ve assisted in a few interviews for various positions and struggled with assessing their computer skills. If this site was mentioned on a resume for me to verify their information, that candidate would have made the choice much easier.

p.s. Dear Coderbits, if you run across this blog post, please consider adding Microsoft PowerShell, VBA knowledge and ExcelForum.com to your site list (if that’s possible). Otherwise, You guys have an AWESOME site. keep up the great work!

Dear Codecademy..

As I mentioned in a previous post, I’m learning Python. I have many resources that I’m using at this time. A couple of text editors, a couple of different IDEs, four different books, and a couple of websites. Today, I’d like to talk about one of the websites: Codecademy.

 

The good:

  • It’s free
  • There is a large number of lessons available (covering many  languages including Python)
  • The lessons are split into bite size pieces
  • There is a field to write and run your code directly on the website
  • There is a large user base. This translates into an active community in the Q&A section (This is where you go for help when you’re stuck on a lesson).

 

The bad:

  • The version of Python taught is 2.6 or 2.7.   Python 3.0 was released in 2008.
  • The lessons and grading are inconsistent. Some Instructors leave out important information which leaves students scrambling for the Q&A section.
  • The grading mechanism is flakey. The instructors decide what tests to run on a student’s code. Sometimes, a lesson will pass when it’s clearly flawed and sometimes they will fail working code.
  • There doesn’t appear to be any sign of instructors reviewing or updating lessons that are buggy or broken.
  • There’s no way to let Codecademy know that there are bugs. (I assume they removed that feature after being overwhelmed by notifications).
  • The site doesn’t run on Internet Explorer

 

On the balance, it’s a decent site to learn Python. It’s one of the best that I’ve found so far.  In the future, I’ll try to list the other resources I’m using to learn.

Stay tuned…

Excel Dynamic Chart Titles

http://www.exceldashboardtemplates.com/

Here’s a link to a great site that shows a lot of tips and tricks for creating charts and reports. Some of the posts explain formatting topics and some show how to automate various processes. The first time I went to this site, I learned how to automate chart titles. It might seem like a small thing, but I probably spend 10 minutes a week updating chart titles. That adds up to roughly 500 minutes per year (or 8+ hours). I literally saved myself a day’s worth of time annually by automating the chart titles. Little things like this can add up for huge time savings.

Check them out.

Excel, Python and accounting. Oh my…

A little bit about me. I am the Special Projects Coordinator for a second tier defense contractor. I’m under legal agreement not to divulge any proprietary information about clients or company related information. What I can talk about is the types of problems I run into on a daily basis and the solutions that I’ve derived. I never know what the day will throw at me. In a week I might build a Crystal Report for the contracts department, Run our weekly financial reports, work with a software developer to automate some manual process, research software, track projects for other people, automate part of our WIP, and train new employees. Those are just the big items. I might also repair a desk, haul documents to storage or teach the intern how to build a Gantt chart.

Currently, I spend a lot of time working in Excel and Crystal Reports. I am also learning the programming language Python.

If you post a question in the comments, I’ll try my best to answer them. Heck, I may even make a post about it.

The Adventure Begins

After a year and a half of exploring, I’m officially rebooting this blog to document observations from the world around me. In addition to auditing topics, I’ll add items I’ve ran across that might be helpful for others. It’s my version of a public secret journal. Hope you enjoy it. Here we go.

Operational Auditing: The Secret Weapon

For many people, auditing is seen as a cost center. That means it doesn’t add anything to the income of the organization. It’s simply an expense.

But Wait!

What If I told you that auditing could bring money back into the organization?

While Operational Auditing can’t create profits, it can reduce expenses and increase productivity and efficiency to boost profit margins.

To be exact, Operational Auditing is a contra-cost center, not a profit center. The term contra is just accounting lingo for “opposite”. A contra-cost center is where money comes out of the cost center account. It’s more like finding loose change in the sofa. The money was yours, then it was gone, and now it’s back. Another analogy would be like using coupons. The only difference is that you get to decide the amount of discount.

Operational auditing can be used for R&D, inventory management, production lines, marketing, financial collections, or customer service. The only limit is the resources of the auditing team.

This doesn’t mean that auditing can solve all of your problems. That’s management’s job. The function of operational auditing is to allow management to delegate some risk management and problem solving. Auditors should be individuals trained in identifying and evaluating risk and developing controls to recommend for management to implement. In the end, management is responsible for deciding what actions to take. Auditors are the risk counselors.