Retail Store Systems 101

I gave a talk recently at the Groupon office in Palo Alto, on “Retail from the Other Side: Learning from Working with POS Systems”, and wanted to share the slides for the same.

Retail Systems are a complex bunch. If retail is all about detail, their systems are all about variety, and the variety that I have seen in retail systems over the last few years is mind boggling. If you want to build anything for these systems, you have to take into account the store layout and architecture, whether they are on a POS system, a regular PC, or a thin client, or even on a virtualized environment like Citrix. You have to deal with antiquated system configurations, low memory, challenging connectivity issues.

Perhaps some of the biggest challenges are human related – in adoption and training – retail being a very geographically distributed operation, it becomes very difficult to retrain and ensure the associates are best positioned to use complex systems, but in a simple and efficient manner. You have to deal with language issues, remote connectivity, and busy store hours.

No wonder building store system, and building for store systems is not for the faint hearted.

The Kitchen Computer : If she can only cook as well as Honeywell can compute…

Chanced upon this very interesting trivia in the Wired article on the new book by Chris Anderson (FREE):

Honeywell Kitchen Computer Advertisement

Honeywell Kitchen Computer Advertisement

“Honeywell Kitchen Computer, priced at $10,600″

“the Kitchen Computer was aimed at housewives and featured integrated counter space. Those housewives would, however, require a programming course (included in the price), since the only way to enter data was with binary toggle switches, and the machine’s only display was binary lights. Needless to say, not a single Kitchen Computer is recorded as having sold.”

The text of the advertisement read (source: Wikipedia):

“Her souffles are supreme, her meal planning a challenge? She’s what the Honeywell people had in mind when they devised our Kitchen Computer. She’ll learn to program it with a cross-reference to her favorite recipes by N-M’s own Helen Corbitt. Then by simply pushing a few buttons obtain a complete menu organized around the entree. And if she pales at reckoning her lunch tabs, she can program it to balance the family checkbook. 84A 10,600.00 complete with two week programming course. 84B Fed with Corbitt data: the original Helen Corbitt cookbook with over 1,000 recipes $100 (.75) 84C Her Potluck, 375 of our famed Zodiac restaurant’s best kept secret recipes 3.95 (.75) Corbitt Epicure 84D Her Labaird Apron, one-size, ours alone by Clairdon House, multi-pastel provencial cotton 26.00 (.90) Trophy Room”

Hmmmm …

Fatherly Advice to Programmers by Chuck Jazdzewski

Chuck Jazdzewski gives very topical advice to programmers in a post on his blog [link].

The main bullet points:

  • Keep Learning
  • Learn to communicate
  • Be Predictable
  • Own up to Your Mistakes
  • Never let Bad Code off your Desk
  • Programming is Fun but Shipping is your Job

Needless to say, the last one is my favourite :-)

Three Men in a Conference Room

What’s worse than Three Men in a Boat? Three Men in a Conference Room [This could have been made into a MTV quiz question]. Full points for guessing that correct.

However, that’s not quite the best answer. It’s ‘Three Men who claim to do research in Computer Science but having many other varied interests sitting huddled together in a Conference Room when nobody’s watching and working on the giant problem of figuring out what it means to do a single unit of work’. That’s not very succinct. So, let’s just stick with ‘Three Men in a Conference Room’ (which pretty much describes it anyway). So, if you have been using your brains on steroids, you must have already guessed the protagonists of the story. Let’s call them – M, G and K.

When you are discussing extremely esoteric abstruse concepts like what it means do so some work, the conversation can take many turns, meandering around with flippant frequency, confusing everybody involved. Sometimes, verse gets thrown in:

K: So, we have to keep track of everything – the job, the task, the assignment, the activity, the process, the worker, the employer, the system, and (of course) the gig. Check the thesaurus — are their any others that we need to consider?

M: But, you forgot the solution. What are we doing the whole exercise for?

G: (non-chalantly) Job Kar beta, Solution ki chinta mat kar [Do the Job, don't worry about the solution -- an oft (mis)-quoted verse of the Bhagwad Gita]

M: And the activity is the meta-level concept and lives on

G: The tasks keep coming and going for each activity.

K: (Reminiscing) As Tennyson had said: For Jobs may come and Jobs may go, Activities go on forever.

M: (ExasperatedMinutes to write before I sleep, Minutes to go before I sleep

As you can very well imagine, this does not bode very well for human sanity.

The conversation meandered to outsourcing. We are such hypocrites because we teach children to do everything themselves, and when they grow up they are taught words like outsourcing and core-competency (Child: Mommy, hygiene really is not my core-competency. Maybe I can just outsource bathing to you)  — and we concluded with err… (ah, yes!) the conclusion that an extreme form of outsourcing would be when Apple Computer is stripped down to one person — Steve Jobs.

Finally, a technical blog!

I have done it! I finally fought off all my languor to start a technical blog, something I have been thinking of for quite some time. The blog has been born out of my desire to see better analysis on technology rather than technical news reporting (or which TechMeme is the best place). The content of the blog will obviously be limited by the knowledge of the author — any field of technology today is so deep and there are so many open questions that it is impossible to do justice to writing about it without spending a year or two working in it.

As I said, I plan to write few posts, but hopefully those which have more meaning and more technical depth. I will not talk about new products or services, fads and fashions but rather try to give commentary on more fundamental aspects of technology. I do not work in the Internet domain, and hence, I may be out of date, out of context, out of sync or all of the above, but hopefully the blog will be of use to some :)

So, to kick off the new bog, there is a rather long post on Identity (the best topic I could think of), the laws thereof, and a discussion about some of the newer federated identity management systems. Here’s presenting to you:

kpowerinfinity on technology

[Almost a week of reading has gone into it. Wanted not to underline this point, but well, had to :) A kind spattering of comments will be helpful for both the motivation of the author as well as in deciding future direction.]

The Cafe at Alliance Francaise de Bangalore and the number 13

I saw Let’s Have Sex by Vladimir Krasnogorov performed by Workshop Productions today at Alliance Francaise de Bangalore. While the play will not find its way into my spaces blog, it was my first visit to af Bangalore, and I liked the place. What really piqued me was the cafe. There was a strange mathematical irony (or perhaps creativity!) because almost everything seemed to be priced at Rs. 13. Obviously, Nobody there suffers from triskaidekaphobia. However, looks like the architect of the place was cut short of using his math-creativity fully. The samosa stood out as an eye-sore at Rs. 8 and tea (2 cups) was disappointingly priced at Rs. 14 (how could they break the symmetry?!).

Gave me an idea. Imagine, a row of gourmet items all priced at Rs. 13. Of course, there are 13 items. The cafe-owner could very conveniently hang a large board with multiplication tables of 13 to aid the customers (the clincher!).

Cafe 13, or perhaps to make it even more mathematically esoteric, Cafe E.

[I am not the lone lover of symmetry. Looks like very much a geek thing. People have done it with far more disastrous consequences. Damn, if I knew how to draw cartoons!]

Lines of Code

A quick way to find the lines of code under a subdirectory:

find | grep “.cs$” | awk ‘//{print “\””$0″\””;}’| xargs wc

It recursively finds all the files under a directory, passes through a grep filter (which you would have to update based on your preferred language of development), awks it to enclose it with quotes and then passes to wc using xargs. Neat!

My current project now has about 31k lines of code, out of which about 9.5k is mine. Messy!

[Thanks to Robin for help with the commands]

Follow

Get every new post delivered to your Inbox.

Join 1,843 other followers

%d bloggers like this: