Home > Blog > Cloud Computing, Data Centers, and the Meat Locker Matrix

Archive for the ‘Uncategorized’ Category

  • Cloud Computing, Data Centers, and the Meat Locker Matrix

    Today is Tuesday, May 18th, 2010. During the last two days (Sunday and Monday), two of our employees spent 40+ man hours in our data center.

    We use Paetec’s data center (also known as a Co-Lo site ) in Fort Myers, Florida to house our internal business applications, our R&D infrastructure, our phone system and our Hosted ASP software application. Paetec provides the bunker, the security, the bandwidth, the power,  and the cooling. DataWorks provides the servers and software.

    If you are looking for cloud computing  this is where it exists.

    Cloud computing is not some vaporous thing that floats magically on the internet. It is racks and racks of noisy, hot, glowing  servers,  stacked one on top of the other in an enclosed silo of steel and cables. Our Co-Lo site is cold — meat locker cold. You wear a warm coat when you are in the cloud.

    Read the rest of this entry »

    2010.05.18 / no responses / Category: Uncategorized

  • Reports – Expanding your Business Intelligence

    We have somewhere north of 500 published reports in version 6 of  NeXT. Each report has at least 5 query options, but most have over 50 query options.  The reports are beautifully designed and a buyer or retail manager can really dive into the performance of product lines and SKUs.

    That’s pretty good, but we went two steps further with version 6.

    Read the rest of this entry »

    2010.04.07 / no responses / Category: Uncategorized

  • Retail 101. Fewer Choices equal More Sales

    Our local mega-movie-complex figured out many years ago that if they offered too many candy choices, they actually lowered their candy revenue.  What they probably learned in a Retail 101 class  (or a corporate manual) was that if you have too many choices, the customer takes longer to make a selection, the line moves slower, and because the movie start time is fixed, folks bounce out of line and head for their seats without making a purchase.

    I have noticed a similar problem at our local Subway franchise.  Folks  line up for their 6-inch meals during the lunch rush.  Subway newbies struggle with the menu matrix variables.  A programing language is spoken under the “Order Here” sign:  syntax needs to be in the proper order to get the sub built quickly.  Start with size.  Follow with sandwich type.  Delineate the bread selection.  Keep it moving,  one side step after another until you belly up to the cash register.  Get any of the code out of sequence and you will get an  onion operator mismatch or a division by pickle error.  If you get too many noobs  queued up, forget about the quick turn and burn, you are stuck in the thick of the sub-plot.   After a couple of long sessions of staring at the  potato chip rack,  I now come prepared with a trade magazine (Hospitality Upgrade and Wired are my popular periodicals)  or my current novel (large helpings of William Gibson have been consumed in the midst of the Subway sub-culture).

    If you are a retail manager,  give this some thought:  at the cash wrap you can display a lot of snap item choices – but at what point are there too many choices? When are you creating counter clutter and slowing down the point of sale?  My aesthetics tell me that your counter should have a maximum of  five SKUs  to pick from.  Odd number of choices have more visual power  then even numbers – three is better than two, and  five is better than four. But more than five is just noise.

    Read the rest of this entry »

    2010.03.15 / no responses / Category: Uncategorized

  • That Was Your Retail Idea

    I like Microsoft’s Windows 7  TV commercial where users  flashback to an inspirational moment about improving Windows.  It’s cleverly done where the Windows-7-Was-My-Idea sequence depicts a younger, thinner person – whose teeth are whiter and eyes are brighter.

    My — 25 plus years in software development, couch-potato, Monday-morning-marketing, 6 years of art school, thinking about it outside the 30 second TV script — critique spun out of my noggin this way:  the earth must have looped around the sun a couple times between the moment of divine inspiration and the feature’s debut.  One fellow looks like his moment of bliss was followed by 10 planetary orbits and maybe 10,000 glazed donuts. That’s a lot of donuts.  And 10 years is a long time to wait for a software feature.  So the complete gulp of the ad went down like this: a light zesty initial splash, followed by a sour after taste.

    Read the rest of this entry »

    2010.03.14 / no responses / Category: Uncategorized

  • Retail Budgeting, First. Open to Buy, Second.

    Yesterday on March 2, 2010, I announced the scheduled release of DataWorks top down Budgeting module for NeXT® – our inventory control software for the Hospitality and Entertainment industries.

    The 55 minute seminar was recorded and can be watched by clicking here.

    Read the rest of this entry »

    2010.03.03 / no responses / Category: Uncategorized

  • Going Boldly – Coaching, Scouting, Space Exploration

    It’s the morning after the super bowl, and I just looped through the company canteen, where our football fans were talking about yesterday’s game.  Our take away: Great coaching and leadership. The Saint’s coaches took some bold intelligent risks – and in our Monday-Morning analysis, the leadership made the difference. Congratulations New Orleans Saints.  And congratulations NFL – it was a great BOLD football game.

    Two other events that are important for Monday, February 08, 2010:

    1. The Boy Scouts of America celebrate their 100th birthday today.
    2. NASA launched the Space Shuttle for the last time at night. It’s payload: the last major piece of the international space station.

    Living in South-West Florida,  I had not witnessed a night-time launch, so I set my alarm to 3:45am. Upon waking I logged onto the internet and checked the weather for visibility and NASA for launch progress. Everything looked AOK, so I hopped into my car and drove east towards the Everglades.

    Monitoring a radio station that was covering the launch, I drove until T-minus 60 seconds, pulled over, oriented my compass to a heading of 20 degrees, and waited.

    The announcer called the lift off, and 45 seconds into the flight, I saw a red beacon burning on the horizon. The tight bright ball  stretched into a road-flare flame that arced up into the morning sky.

    Standing along the roadside, I watch the booster’s blaze for 6 minutes. When the engines glow became the same intensity as the stars, I slid back into the car, and with a deep melancholy I drove back home.

    Read the rest of this entry »

    2010.02.08 / no responses / Category: Uncategorized

  • Inventory Control Response Times – DataWorks 3 / 6 Design Axiom

    Way back in 2006 we did a major re-factoring of our inventory control application – NeXT®.  We took out stop watches and started charting all of our form’s behaviors. We  focused on our Daily Maintenance and Transactional forms (read about those here).

    DataWorks’ 3/6 Design Axiom:

    • Any user action (click of a button, etc) that takes over 3 seconds to complete must be accompanied with a thermometer, hour glass or status message that indicates the system is still working.
    • The goal of all forms is that they display usable information to the end user within 3 seconds of a menu click.
    • The maximum allowed time that a form can take to display is 6 seconds.
    • A form that takes over 6 seconds to display, must be redesigned with less data or fewer controls until it takes 6 or less seconds to load.

    Read the rest of this entry »

    2010.01.26 / no responses / Category: Uncategorized

  • Inventory Control Operations and Transactions

    While writing the prior posts about the 10 Second Rule in inventory control, I started thinking about our end-users and the forms they use to operate our software. Imagine that we could gather every inventory control system ever written by DataWorks (and while we are at it let’s toss in every AR, AP, GL, Payroll or ERP application ever programed by any software company) into a huge vat of creamy digital goodness.

    Then using a yet-to-be-invented silicon-spatula, we would pry the user interfaces from these systems into a giant pile of one-dimensional pelts.

    Next we would rake these skinned bits into the intake scoop of a yet-to-be-invented silicon-shaking machine. After clicking the OK button, we would adjust the lumbar support of  our Herman Miller Aeron chair (mine’s black),  and watch as the mythical machine shakes and sifts the leafy bits though various mesh screens. Eventually all the input will be sorted into five unequal mounds of output. In order of their height and weight the piles would be grouped like this (you may not like the names of the piles, but this is my made-up machine, so these are my made-up names) :

    1. Confirm & Comfort – Little crumbs of programing chaff  that ask yes-no questions,  tell the user that something is happening (Hour Glass or Thermometer Bar), or will happen – once they click the  “OK” button.  These forms generate comfort to the end user – they let you know the software is working away on something, they ask a question to make sure you really want to change all the prices of the beanie babies to 19 cents. They add some flavor to the system, but they don’t really do much. They are the cranberry laced croutons of a much bigger salad.
    2. Configure & Forget- rarely used after initial setup. Super simple to program. If you have seen one you have seen them all. (i.e. System Defaults, Colors, Sizes, Units of Measure, Classes, Departments, Margin Plans, Ticket Type, Currencies, Languages, Addresses).
    3. Daily Maintenance – highly specialized forms that handle the heavy daily lifting of inventory. Lots of code.  Speed and flexibility are important.  (i.e Product Input, SKU definition, Cost Updates,  Price Changes.)
    4. Show & Tell – retrieves and organizes data for your viewing pleasure. This group includes screens used to select date ranges for running reports  and forms used for looking up a particular data set (i.e.  Product look up, Sales Audit review, Comparative Sales Reports,  Best – Worst Analysis,  In-Transit report,  Inventory shrink, General Ledger Batch)
    5. Transactional – an elite group or  highly trained, highly specialized forms,  used to record an inventory control action. These forms are the work horses within any inventory control system.  (i.e. Purchase Order, Receipt, Transfer, Markdown, Inventory Adjustment, Return to Vendor).  Lots of Code.  Lots of business logic.

    Read the rest of this entry »

    2010.01.14 / no responses / Category: Uncategorized

  • Inventory Control Software- 10 Second Rule – Part 3

    If you have been following this blog and been wondering how DataWorks is planning to compress time and jump over some of the low hurdles lined up along the space-time continuum you can leap over “The Boring Bits”, and race down to the plot-spoiling, “10 Second Solution” finish line below.

    The Boring Bits

    When we started designing NeXT® back in 1998 our primary thoughts were:  get the inventory data model correct. The first line of the ARMS™ system had been written way back in 1984 – two years before DataWorks was even founded (more on that later).  It was a very good system for the time, but it had many design limitations that prohibited it from growing into an enterprise system capable of managing all the purchasing and inventory needs for the hospitality and entertainment industry.

    NeXT was a total rewrite. We used all of our collective experience to scope out a system that would tackle all the problems with the ARMS system and take DataWorks into the 21st century.

    ARMS had a whopping 67 data tables that stored all the information of our inventory control system.

    At last count, NeXT has over 520 tables — and it is still growing.

    If you put the two systems side by side, entered the same purchase order, then received the same partial packing slip with a 100 products, ARMS would actually beat NeXT in a “save-the-receiver” race.  Two reasons:

    1. We are tracking and storing MORE information with NeXT.
    2. ARMS was written with an 8 bit 386 processor in mind.

    We knew that we had MORE data, but we figured Moore’s Law would take care of the details. We really banked on  Gordon E. Moore’s prediction that the number of transistors on a CPU would double every two years. Those additional transistors would translate into faster processing time and what ever programs we wrote would be quickly executed by Intel’s chip du jour.

    Moore’s law has held true, (and probably will until the transistors reach the molecular level – 2015 or 2020 depending on your favorite  forecaster/futurist) but the speed of the computers have not doubled  every two years.  Computer speed has plateaued.  Back in the late 80′s we purchased a new computer  every year. Jumping from a 286 10 MHz to a 386 16 MHz or getting a PC with a red turbo button on it, meant you were going to get some immediate productivity increases.  Now, our R&D group only gets a new PC once every three years.  The computer I use today to  write code with is maybe 20% faster than the work station I used three years ago.

    Maybe someone can find a graph that compares transistors density to processing speed and add it as a comment.

    The other technology we bet our ERP ambitions on were hard drive space and hard drive access time.  Back in 1986 a 20Megabyte hard drive with 65 millisecond access time was standard gear. We had to be very stingy with the data we kept – in fact the first versions of ARMS did not have historical sales because there simply was not hard disk space or time in the day to save it or report on it.

    Think about this metric. Hard Drive storage space has kept pace with transistors (I think there is Law for that too, but I don’t know what it’s called. Comment anyone?), but access time – the all important go find the data and present it to the end user benchmark- has been sitting on top of a  plateau for a long time. I remember the huge jump in 1988. We went from 65ms to 24ms access time and ARMS tripled in speed over night. I think we actually jumped from our desks and cheered.  Today’ s hard drives (circa 2010) typically have 9 millisecond seek times.  Now DataWorks does own some  really fast gear that is used in our ASP server farm – I understand those drives have 2 millisecond seek times.  So what is that in terms of speed improvement? To go from 24ms to 9ms is great – but – it is only 2.6 times faster than 1988.  For a 22 year time frame that is really not much of of an increase.

    What does that mean?  In 2002, when we shipped NeXT, we got the system we designed, but we shipped a slower system then we expected.  We wanted a fast turning, quick accelerating, dog-fighting F-16 Falcon, but what we delivered was a big, heavy,  F-105  Thud. (This is a shout out to Col. John Boyd – more on him later.)

    One trend that appeared in computer design that might have helped us speed up our application was the introduction of dual and quad core computers. That means 2 or 4 or more CPUs are huddled inside one computer. If the first CPU is busy, the second, third or fourth CPU could theoretically pick up the slack and crunch the data we are saving.

    All that is well and good, but that is not how inventory transactions work. As I described way back in Part 1, inventory transactions are like a factory assembly line, you step through each process and do each step in sequence until you get the final product.  In our factory that final product  is recording the event, updating the merchandise value, satisfying the accountants, and generating analysis data.

    What this means is that we can not compute on hand values independently from on order values. It would really speed things up if you could assign each CPU within the computer a separate thread of logic: You – CPU #1 – take care of the cost calculations; Hey buddy – that’s right Mr. CPU #2 – you work out the new On Order quantity for the purchase order; you over there sulking in the background – Corporal CPU #3 – front and center, march over to the parade ground and  computer the On Hand values;  and Charlie CPU #4, step outside to the internet and grab the current exchange rate for the EURO – hurry up, because CPU #1 needs it to calculate the new landed cost. And – oh by the way – while all of you are concurrently working on the same inventory records, play nice and don’t step on each others data.

    Thread computing has very limited use in the business world that I live in.  If DataWorks was in the weather forecasting business we could use all that CPU muscle to concurrently crunch and test various models to predict the weekend beach forecast, the pollen index, or how many named hurricanes are going to make North American land fall.

    DataWorks is first and foremost in the inventory operation’s  business.  We do some serious forecasting for purchases orders , but our current needs do not require concurrent threads to predict the vendor-lead-time usage for an item, we do that by jumping over one hurdle at a time.

    So to wrap up these boring technical bits:

    1. DataWorks is stuck with this kind of programing:  do step 1, do step 2, do step 3, … until we finish with the last N process.
    2. The whole world is stuck on top of  the current computer-silicon-hard drive -hardware summit. The landscape ahead is gentle rising plateau – there are no big productivity jumps on the horizon.

    10 Second Solution

    First off – lets state the obvious, if you are running NeXT on your desktop in a LAN or TS environment, just start running another copy of NeXT on your desktop. If you got one copy crunching a big receiver, just start another session of NeXT and go work on that second task. We don’t license our software by the seat so have at it. Now if you are using NeXT hosted on the DataWorks ASP Farm you could also start another session if you have subscribed for the additional log on (hey, we got to make money too).

    But In version 7  we will adding something to NeXT that will make running multiple copies of the software seem like an 8-Track Tape in a 1975 Pontiac Catalina.  In version 7, scheduled for release in the 4th quarter of 2010,  we will be shuttling transactional processing off to a silent background program so that your current task can be released from the drudgery of saving data. You will be free to start another task — rather than watch a thermometer bar inch its way across the screen.

    The plan is for this work to be picked up by the NeXT Service. Currently, the Service really has a pretty easy job. It hangs out by the CPU’s cooling fan,  just looking for something to do. It really only stretches it muscles during the night shift, when it takes care of  store polling,  processing sales, updating the inventory stock ledger, calculating turns, adjusting vendor times, and preforming inventory analysis.

    Since the NeXT Service has so  little to do during the day, it will be told that an  inventory transaction has just occurred and if it would not mind, and if it is not too terribly busy,  would it mind picking up the job and take care of it in the digital back ground?

    Here are the current tasks that NeXT Version 6 contends with:

    • Run the Sales Imports and Inventory Exports (which can be schedule as often as every 3 minutes)
    • Send email about polling problems to DataWorks for review
    • Refresh the Inventory Daily Stock Ledger with previous day’s inventory transactions
    • Roll up Stock Ledger data for Period Analysis (13 week, 13 month, Q5, Q4, etc) for Time-Series forecasting methods
    • Compute Actual Vendor Lead Time and Time to Floor by Vendor, Vendor-Subclass and Vendor-Product
    • Compute Stock Turns for Sub-Class and Open to Buy Merchandise Classifications
    • Generate Suggested Orders
    • Roll up Stock Ledger Data for Open to Buy and Budgeting Modules

    In version 7 of NeXT we will be adding these additional tasks to the NeXT Service :

    • Query and publish inventory reports to a subscriber of end-users.
    • Generate Suggested Transfers
    • Handle “large” inventory control transactions for the end user

    In Version 8 of NeXT our  plans are to open up the Service events to the end user community and  allow expert users to configure and define their own procedures to be run by the NeXT Service.

    That is when “things” should really get interesting.

    2010.01.12 / no responses / Category: Uncategorized

  • About This Blog

    My name is Mark Cecil.  I am the co-founder and CEO of DataWorks, Inc.  I  started DataWorks in 1986 as a custom software house.  When we opened our doors our motto was “Write code, be creative, have fun, make money”.

    There was no business plan to become the best-of-breed leader in retail inventory control for the hospitality and entertainment industry. How DataWorks got here will be the subject of another blog post (or two).

    My background? Born in 1958, I grew up on a family cattle and tobacco farm in Cecilia, KY.  I moved to Naples, FL in 1969 two weeks after Neil Armstrong walked on the moon. My dad – Bill Cecil – was a high school math teacher. He and another math teacher (Roger Otten) wrote a grant to the Digital Equipment Corp where they asked for and were awarded a massive room-filling, card-reading, paper-tape punching, two terminal computer for Naples High School in 1972-3.  I think it was a DEC PDP-8.  I remember this “serious” row of orange and yellow toggle switches that you used to boot the computer with. Click here to see what the room kinda looked like.

    My first line of computer code was written in 1974 when  I was 15 years old. My dad was looking over my shoulder as I punched in my first statement. I owe a great deal to his vision. That opportunity was pretty special. And if you were going to find the spark that lit this company’s fire, it could be traced back to that moment of combustion. Based on that, I am now going to bestow the title of “DataWorks Digital Daddy” to William H. Cecil.  Business cards are now being printed…

    I set off for college to be a Botanist.  In my junior year, with a 3.8 GPA I  switched my major to Studio Art. I received a  BFA in Painting from FSU in 1980. I followed that with a MFA in sculpture from the University of Cincinnati.

    As a professional fine artist working in Ohio, I got my hands on a series of personal computers (Atari 400/800, Apple IIe,  Kaypro 10) that re-kindled my original digital ember. I taught myself assembly language for the Motorola 6502. Using Byte magazine’s monthly feature,  Circuit Cellar by Steve Ciarcia, I learned a great deal about hardware and interfaces.

    I spent my spare time loitering around Radio Shacks, raking though their discount bins looking for inexpensive TTL and CMOS integrated circuits. The three chips that still come immediately to mind are the : 7402 (nor gate), 555 (timer) and the 4017 (decade counter) .  With an artist’s salary,  I built rather than bought technology. I  bread-boarded and  wire-wrapped computers  based on the Z80 chip. I etched my own circuit boards,  built an EPROM burner, hacked together a frequency counter, and wrote a primitive OS for my sculpture’s behaviors.

    My most ambitious project was coding a CAD-3D modeling tool in Basic with machine code calls to handle the rendering.  My plan was to exhibit my sculptural models in a gallery full of monitors with my digital wire-frame drawings.  I was becoming more of an engineer than an artist.

    As I was designing and building robotic sculptures, I had an opportunity to write a mail list management program for a community arts center where I was employed as a curator. I wrote the program in dBase II. The year was 1984.

    I have been writing business applications in dialects of the dBase language every since.

    My retail background is also seeded back in the 1970′s. My part-time after-school job was at a contemporary apparel store called Jamis.  The store is still owned and operated by a husband and wife team (Ed and Fredi Verdesca). I started the job as a janitor. When I left for college, I was still the janitor, but I was also the accounts receivable and accounts payable clerk.

    Later on in the late 1980′s and early 1990′s Ed Verdesca would be an important business mentor for me. Ed had worked for IBM in the 1960′s and with his savvy for fashion apparel, I learned the operational side of the retail trade from a system’s analyst point of view. Without Ed Verdesca’s early input and guidance, DataWorks would not have ended up focusing on inventory control.

    There are a lot of other important events and people in the history of DataWorks. I have seen ups and downs, success and failure,  and learned more than I have taught.  I have made lots of mistakes. And – I have been lucky. It has been — and still is — a very enjoyable journey.

    The purpose of this blog is to document the journey, share the vision, and build marketing presence for DataWorks.  I will probably write the first dozen or so entries, but I plan to share  the writing with other talented DataWorks’ team members. The topics will be shelved somewhere on these library stacks:  art & design, computer business applications,  or inventory control operations.

    If I wander into topics that touch on aviation,  scouting,  marriage or being the father to seven children it is because these are the other passions that make up my life.

    I hope you enjoy the effort.

    2010.01.10 / no responses / Category: Uncategorized

Most Popular

Recent Comments