Wednesday, April 25, 2012

Fictional business - Random Suppliers in Excel


This blog resumes creating a fictional business focusing on about suppliers.

We begin by creating a small suppliers list using Excels random number function.

What is a random number?
Computers are predictable in their computation power as it is possible to select a different number at a certain time. The number is always between 0 and 1. Wikipedia (2001-present) [accessed 25 April 2012] has a good overview about Random Number Generators.

Excel has two in-built functions called RAND and RANDBETWEEN as both function returns a number between 0 and 1 to many decimal places after a decimal point.

Take note that each time there is a change in a cell or formula. Excel will by default update all calculations automatically. For functions like RAND and RANDBETWEEN is calculated with a new number.

If the random result appears suitable for business data, we simply copy or cut and paste the values in another cell or range of cells in order to preserve the data.

Why do we require the random?
To generate a fictional data for business, we need the computer to select different numbers for a range of items like company supplier names and eventually select supplier’s goods and prices. In essence, the computer will select a supplier name from a database.

How do I get a random number?
The picture attached shows when we enter “=RAND()” formula in Excel. We need the brackets as the results returning to a cell contains no extra information provided.




Thus, to generate a number between 1 and 10, we need to change “=RAND()” as “=INT(RAND()*10)+1)”. The use of INT is another formula to return an integer that the decimal point is not expressed.

On the other hand, =RANDBETWEEN(Bottom,Top) needs information about the lowest number namely Bottom and the highest number Top. The picture below shows the difference between these two functions.
This can be simplified by using =RANDBETWEEN(1,10) which produces the same results as =INT(RAND()*10+1) does.




How to make a random list of supplier names?
To achieve this, we need a list that expected not to change when the RAND() function is called. The small list here is shown as an example.

The next picture introduces another column called Result.




I use the VLOOKUP formula (short for vertical lookup) to ask Excel return the supplier name from a range of cells. The information for the formula is as follows. VLOOKUP(,,,).

Thus, when combining both the random information above with the VLOOKUP, the formula to enter becomes =VLOOKUP(RANDBETWEEN(1,5),$A$3:$B$8,2,FALSE)

The $ dollar signs are important in the formula to keep the range of cells the same should we drag the list down like the next picture shows. It is a matter of personal choice on how large the list can go.

The next blog will apply these principles into a VBA module.

Til then, Peter.

Friday, April 20, 2012

Software Development continues...

This blog expands on the software development.

Software development is an integrated approach of making software from concepts of real world problems into working software. This involves repeating the cycles of inputs, processes and outputs over and again in iterative cycles.


That is until the software is considered finished with the customer's agreement. In many cases, using consistent effort will achieve good results.

Generally speaking, the iterative cycle is about finding out what the customer wants to do by check our understanding of what the customer means. Also, we write the software design well to fulfil the customer's needs and test the software making sure that it works and delivering the written software on time for each item in the list that meets the customer's approval.


I present this from two different point of views.

Firstly, Brett D. McLaughlin, Gary Pollice & David West (2007) has introduced these activities, and the table below is expressed on how I believe everything is put together, that is for each activity on the left hand side, there is a corresponding Input, Process and Outputs to be completed. Note that a series of steps are repeated until everything is covered.


Lastly, Adkins, L., n.d. What is Agile http://goo.gl/m0O8Ni presents videos showing how tasks similar as I described earlier would work for teams of different skills such as designer, programmer, user interface, tester in short bursts of four weeks producing potential deliverable or shippable product.

Til then,
Peter

Friday, April 13, 2012

Excel, VBA and Software Development tools Intro.


This blog introduces readers to all the information in regards to Excel, VBA, Software development and thinking tools encouraged for communicating with others.

For Excel
I am excited to have found a very helpful online community resource called GCFLearnFree.org
(1998- present day) "GCFLearnFree" [accessed 13 June 2012] is a free online learning course for the general population. Excel 2007 and Excel 2010 lessons are available.

For VBA
To save my time reinventing the wheel, I took a look on the Internet of what other websites offered in regarding teaching VBA.

Peter (1997present) from his website "Excel Macros Programming" [accessed 13 June 2012] has been teaching VBA for all versions for a general audience in positive tone & approach as Peter's (1997) profession as an accountant/businessman by trade. Therefore, I feel it is a good cover point in knowing the basics and simple programming tasks such as modules, functions to simplify complex calculations and procedures.

Chip Pearson  (1997-present day), "Pearson Software Consulting, LLC" [accessed 13 June 2012] explains VBA classes including how to construct them. Pearson (1997) uses the context of business employee to guide the readers about classes.

David Horowitz's contribution to Cimaware software website (2000present) "Using Classes in VBA | Expert Zone" [accessed 13 June 2012]. Frankly, I found it helpful when someone provides a different context learning classes which Horowitz (2000) used information about dogs. I got the point very quickly there.

Bruce McPherson from his Excel Rambling site (2011–present) "Excel Liberation" [accessed 13 June 2012] provided great contributions to eggheadcafe (2000present day) [accessed 13 June 2012] for .net developers and extend Excel VBA for integration of other emerging techolongies such as javascript. Bruce (2011) has a no nonsense and to the point approach. Mcpherson (2011) [accessed 13 June 2012]  showed what you really need to understand and learn about VBA then expand that approach about classes [accessed 13 June 2012].

Classes are a means of describing objects related to the real world. I would like to take advantage of using classes to describe the business, associated business practices with modern programming software practices.

For software development
I am inspired by the following books from Head First series, published by O'Reilly Media.

Software Development by Dan Pilone; Russ Miles (2008) 
· Object-Oriented Analysis & Design by Brett D. McLaughlin, Gary Pollice & David West (2007) here
· Design Patterns by Elizabeth Freeman, Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson (2004) here

For other topics
Edward de Bono (1992) developed a thinking tool that was later published into a book titled Teach your Child How to Think. The book is available from Amazon here and has been very helpful for me to discuss ideas in later blogs.

Varing points of view in regards to the content will be highlighted. There is a total of 7 attention directing tools along with 6 coloured thinking hats to show different types (or ways) of thinking. The table below summarises the tools available in no particular order. I'll describe the tools when we use them.

The table below has been developed from Edward de Bono's book Teach your Child How to Think (1992)
Name of Tool Meaning and purpose of tool
Attention directing tools
CAF – Consider all factors Used to increase the scope or widen the topic at hand.
APC – Alternatives, Possibilities, Choices Instead of moving forward, we go sideways or in parallel of the topic.
OPV – Other People’s Views Recognising that thinking affects people, we need to see their values.
C&S – Consequence and Sequel If an action is taken now, what consequences will occur in the future
PMI – Plus, Minus & Interesting A method to explore each part before making judgements
AGO – Aims, Goals and Objectives A means to break down a problem into smaller parts to be achieved.
FIP – First Important Priorities Which part do we get to do first?
Types of thinking (6 thinking hats)
White Hat Facts, figures and information
Red Hat Emotions, feelings, hunches and intuition.
Black Hat Caution, truth, is this safe to proceed?
Yellow Hat Advantages, benefits, savings
Green Hat Suggestions, new different ideas
Blue Hat Thinking about thinking. The approach of thinking.


In conclusion, I have discussed what Excel does, what VBA does, how to do classes in VBA, where I received ideas for software development and suggested some ideas explaining how to think about problems.

Til then,
Peter.

Monday, April 9, 2012

Fictional Business Plan

This blog explains the creation of a fictional business plan

I borrowed a business book by Greg Balanko-Dickson (2006), "Tips and Traps For Writing an Effective Business Plan" from my local library. This book is also available on Amazon, just click on the link.  Greg covered many steps involved in making a business plan which I used his points to realise the overall business as examples for blogs.

The information below is just a matter of putting my raw imagination into context for business. All names and places are purely fictional.

The company name is called "J&J's Groceries - You select! We deliver Grocery!". I choose the name as the company provides good thought into a brand name for customers in selecting good quality food (fruit and veggies) from the stores at various locations and the company delivers their food at their earliest convenience.

Business industry is a Grocery and Food Delivery Industries combined. There are three competitors, named "Brians Groceries", "Council Food Deliveries" (similar to "Meals on Wheels" form of service which is managed by a council by volunteers), "Supermarket Fresh" a local supermarket. Excel will be used to find how much share of the industry or market is currently the strongest.

Structure of the company is a small business aged three years old managed by two brothers named Jane and Joe Bros Limited. The ownership is registered by Jane who is in partnership with his younger brother Joe. Jane (pronounced JA-ne) is a business-oriented person who learnt a diploma in TAFE about managing a business. Joe is an experienced green grocer who their late father Back has handed down their family tradition of grocery store to Joe. Joe has asked Jane if he could take care of the business so Joe can focus primarily on goods and supplies. This has worked out well as long as Jane can keep the language simple that Joe could follow and understand about how the business runs.

The staff roles and some responsibilities are listed as follows
Jane and Joe - Business owners. Jane is an afternoon type of worker. Jane will manage the store, briefly review business operations, handle some order processing and finish with some delivery using his own car for customers orders. Joe is a morning type of person who is always follow the rising of the sun to buy daily groceries from various suppliers and be the first in the store selling them to customers before Jane enters the store at around about lunch time.
Shelly - business secretary and receptionist who mostly works in the office and produce reports for both Jane and Joe at various times of the day regarding the flow of business in general.
Eric - Store man manager who works well with Joe in the morning with spending money on goods acquired in the early morning shopping with suppliers and Eric then ensures they are delivered into the store house on time for processing customers and business orders.
Porter - Business only delivery trucker who ensure all orders are delivered to business as a priority.
Mick - an IT university student currently doing some work experience in the business sector to fulfill a business profile study for the course. Micks current Excel skills will become invaluable to both Jane and Joe gaining a snapshot of what occurs in the business. Further blogs will be developed as the story unfolds on how Mick can work towards improving the business.
Ashley, Furnis, Doein - young part-time workers helping out the business. Processing goods in the warehouse for orders/requests into deliveries packages for truck delivery.
Walter - A family friend who is a qualified accountant whom regularly audits the bookkeeping practices, helps out with business tax returns and ensure the financial strategies are sound.

The customer demographics are deliberately set to be simple. We have 6 types of consumers accordingly to their needs.
1) Morning Groups - Various fresh food for families or early starters who are up in the morning often needs fruit for their lunches on their way to work.
2) Afternoon Groups - Various fresh food for workers who walks in for their lunch consisting of fruit or families who have time to get vegetables for dinner.
3) Evening Groups - Various fresh food for later workers who needs to make their dinners
4) Business catering - Fresh food at a modest bulk price to serve food for business lunches.
5) Business restaurants - Fresh food for discounted price.
6) Business cafe - Fresh food as a negotiable price for cafe.

The Suppliers - 5 suppliers were identified.
1) Locally - "Grocery Farmers Market" is the main distribution hub where many local farmers produce their fruits and vegetables. Prices are set at wholesale for bulk containers. Competitors also shows up there.
2) Locally - "Paddy Orchards" for a seasonal and a limited number of stock on fruits only.
3) Locally - "Shack Vegetables" for seasonal and limited stock on vegetables only.
4) Interstate - "Fields Orchards" is a small family owned business providing distribution of their own farmers produce.
5) International - "Hardy Garden Market" is the wholesale distribution for special fruit and vegetables recognised by some customers not produced locally.

The products or goods are basically fruits and vegetables that are managed according to seasons as the suppliers rotate their goods due to availability. Further blogs will be required to explain this section in depth.

The services have not changed over the last three years which is basically put the goods in printed boxes of various sizes to allow better handling and storage on Porter truck or Jane car.

Operational procedures
Administration and Office Manager (Jane & Joe on a time rotation basis, Shelly full time for delegated tasks)
Responsible for some administration, office management, financial keeping and reporting.
· Cash flow management: tracks and analyse financial performance
· Internal control systems: budgets, purchase orders, credit approval and collection.
· Weekly and monthly ratio reports and analysis reports.
· Account receivable collection: maintains average receivables aging 30 to 60 days
· Job costing
· Payroll
· Accounts payment (A/P) and accounts receivable (A/R)
· Overseeing of shop expenses
· Handling of bank reconciliations
· Forecasting of A/P and A/R on a weekly basis with operations manager.
· Individual case studies for major purchases, as needed

Operations Manager - Dispatch and Sales (Eric and Porter)
Management of the day-to-day operations
· Purchasing goods from suppliers
· Maintaining on-time pickup and delivery schedules according to customers demand
· Maintaining daily drivers logs
· Completing dispatch and billing orders
· Compiling weekly management reports
· Sales: Maintaining contact with all major accounts (weekly) and actively establishing relationships with new customers (1 per week).
· Work Monday to Friday 8am to 5pm
· On call roster 24/7

Equipment Maintenance
Jane & Joe has a contract agreement with provider "Tracey's business suppliers" for all primary equipment and maintenance repairs which also include office equipment like computers and photocopiers.

Processes
Early morning is mostly purchasing goods from suppliers according to customer demand
Delivery of goods to arrive in shop / warehouse
Load the shop for regular customers while warehouse starts business packaging
Commence delivery of packaging during the day while customers orders will be generated at the end of the day
Finalise all delivery that are outstanding before closing up the shop

This business has 5 goals.
1) Maintain good food quality - Ensure the quality of food and proper food handing procedures remains high by asking customers a survey of their business at the end of each month. Data is collected and audited by Walter against financial and business performance.
2) Delivery commitment - Ensure all goods received from the suppliers arrived within no more than 3 hours from purchase to allow processing of orders/requests from customers. Ensure all delivery of customers orders/requests are completed with 4 hours maximum. All information are recorded on paper based notes with different time-based stamps.
3) Stakeholders complaints procedure - Ensure all complaints are recorded in a timely manner that can be reviewed and actions are communicated back to the stakeholders affecting the business. Data is collected and audited by Walter against financial and business performance monthly.
4) Financial goals - Ensure a buffer of at least 2 to 3 percent of total cash flow is achievable to cater any unexpected risks to the business.
5) Implement a risk management process throughout the business - This will improve occupational and health safely issues raised in the workplace.
That will be enough to get started on the next blog. I will create an introduction to Excel and VBA before addressing the transfer of content into Excel.

Til then,
Peter.

Friday, April 6, 2012

The personal learning experience begins with the first step.


Hello everyone on the Internet and thank you for taking the time to read my blog.

This is my very first blog to the world.

I would like to share a journal with you using this format. So that, everyone may benefit from my learning and application of my new programming skills using Visual Basic for Application (VBA). In order to do this, I will be using Microsoft Excel 2010 and will indicate which version where it matters.

Before I begin, let me tell you how I became interested into VBA. I was a regular reader of the website called Code Project (2012), "CodeProject - For those who code" [accessed 6 April 2012]. I have opted for reading regular reviews daily by email of what is "out there". Something caught my eye about this article by Louis Lazaris (2012), "Publish What You Learn" [accessed 6 April 2012]; The idea I got from this article is to share your experiences.

I do know Microsoft Excel, and the programming language is Visual Basic for Applications.
Microsoft produced an office suite (Word the word processor, Excel the spreadsheet, PowerPoint the presentation, Access the database, Outlook the electronic client to share emails) to help hundreds if not thousands of people to communicate and share information around the globe.

There are many reasons why I enjoy using Excel; Excel is fantastic for recording items such as a shopping list, tallying up figures along with the associated costs plus Excel also has the capability to display how well the items are working for you personally or for a business by creating graphs and tables.

Excel has provided a short hand notion of allowing us to reduce complex calculations by use of formulas. Formulas derived from the field of mathematics can be used to save time and simplify many steps of a complex calculation where many different expressions need to be included.

This leads to flexibility when changing the numbers. This benefits the user so that they can see different outcomes when a value is changed and then recalculated again.

Excel also has a macro which is similar to a recording button on a digital television. Excel translates these clicks from the computer and translates these actions into simplified tasks that Excel can redo with ease, for an example a macro can be used when creating graphs regularly.

VBA is the programming engine that understands the tasks received from the macro and can reproduce it in a blink of an eye.

I would like to finish by ending with a list in point form of what I would like to achieve, and I expect will continue to grow along the journey.

1. Create a fictional or make-believe company so I that I have a basis of a business model (my terminology of what the business does that generates income and expenses) so I could make a list of customers, suppliers, services this business can benefit.

2. Make a fictional situation or risks that occur which a VBA solution will demonstrate.

3. Put into practice several suggested VBA websites or ideas/concepts to create solutions.

4. Once the business is up and running, shift this blog focus into generating VBA Excel games.

Til then,
Peter