An Excel eBay Sold Prices Search Tool

I wanted to buy a Blackberry for work, my company don’t provide me with one, preferring smoke signals instead ;-). Obviously I didn’t want to pay top dollar for it so it was off to eBay in search of a bargain. I noticed there was a large spread of prices for the same phone, which lead me to wonder if I could research the sold prices for various items.

It turns out that you can’t via eBay, but some other company does provide an API (with a free option) which can be used to search the sold prices.   Long story short here is a file that you can use to get the prices. You’ll need to get a developers key first though, at:

https://developer.ebay.com/join/Default.aspx

Mine took a day to come through….

“User Guide…”

Get your AppID key and paste it in the “eBay developers App ID” box, then type something in the keyword box, then pick a currency then and parent category, then a child one. Click search!. If you can’t find anything in this category, try a slightly different set of keywords, of check the “search all” box, to search the all the listings.

The “update category data” link under the child category drop down updates the data in the category dropdowns as eBay change them form time to time.

Note on quality….

Over all I’m a bit disappointed by the whole thing. As I’ve thought about it, while writing the app, it’s dawned on me that it’s quite a tricky thing to do. You see the problem is, eBay gets hammered by people selling links to things, or multiply items, or broken things, or replicas, or mis-listings (something listed as “Oakley sunglass, but when you read the detail it says there not actually Oakley’s but they look like them etc), so getting a true average price is actually quite hard… I’m not sure I trust the results. As the API does not return a list of all the items that go into the average price you can’t eye ball the data. But it’s better than nothing I guess.

Download the workbook here:

A rant on Excel and Bad Ideas.

The great thing about the internet is that anyone can share their thoughts, the problem with the internet is that anyone can share there thoughts. A classic dichotomy if you will.

We see this all the time, people talking utter, utter rubbish about things they don’t understand. As “organisations” have started to blog more and more this issue has increased. The way I see it is like this… If you run “Mega Corps” would you want me bloging for you? I probably wouldn’t. You see I’m not a talented writer, my spelling and grammar are poor and I’m not adept at making my point – as I will now prove. So “Mega Crops” ask the people who can do these things well to blog for them. What actually makes for a good bloger is someone who can think well! See, a bad idea expressed well is still a bad idea. What makes a great bloger is someone who can think and write well – and these types are rare. But still, what would you rather have, an ill-conceived observation expressed elegantly or a quality observation just expressed?

Which leads me to these two blog post, the first one suggests that people who use Excel in the supply chain are doomed, and the second one adds more fuel to that fire.

Beware Supply Chain Excel Users—YOU are DOOMED!!!!

Excel doesn’t excel in all cases…

Now I need to be careful here, I don’t what to offend anyone.

Equally I’d like to address the lack of understanding and insight, or at least offer a counter view. I have some grounds to make these observations, being somewhat familiar with Excel and having worked in supply chain for the last decade or so.

Basically both articles point out the limitations of Excel, principally by comparing the differences between Excel and a Generic ERP system. For example:

“Excel has features that can calculate safety stock by using prebuilt basic formulas such as moving average, standard deviations forecasts etc. Keep in mind that by doing this, an organization will not have the ability to see the entire supply and demand relationship. On the other hand, when the same safety stock is calculated within an application, it will provide visibility to outstanding supplies that need to be replenished; orders can be planned for production; and it can calculate how quickly organizations can turn a forecast into a deliverable product.”

Khudsiya Quadri, Technology Evaluation Centers

And

“I completely agree with the author that there is a big risk to SCM Professionals who rely too heavily on Excel.  There are all the reasons listed in the article such as  lack of collaboration, visibility, control and no ability to perform “what-if” scenarios.  I would like to add some additional thoughts to this discussion.”

Monique Rupert,  21st Century Supply Chains

So, Excel has limitations creating what if scenarios, and pre built basic functions!! Clearly not Excel experts! Another common theme is that Excel is not very good for collaboration, information sharing and data security…

It is almost impossible to control the integrity of spreadsheet data and access to the spreadsheet.  With multiple people accessing the spreadsheet and no security, how can anyone have any confidence in the data?

Monique Rupert,  21st Century Supply Chains

Well true. Sharepoint (etc.) might help here, but that’s another issue. So basically don’t use Excel as a database. Fair enough but…

Comparing Excel to an ERP system is like comparing a Motor Bike to a Train Network. It’s just stupid. Telling people not to use Excel because it does not have the same capabilities as an ERP system is likewise really bad advice. Excel is different to an ERP system, we could easily re frame the argument the other way around and draw the conclusion that ERP system are the work of the Devil!

In fact, lets do just that.

Beware Supply Chain ERP Users—YOU are DOOMED!!!!

ERP systems are slow expensive complex beasts, with poorly documented calculation methods, inflexible font ends, and limited reporting capabilities. I recently talked to a number of supply chain professional and was shocked by how many of them are using their ERP systems in blind faith that the system are optimised for their needs. In the fast passed global supply chains of today, how can these default settings and calculation models possibly be right for your business?

Consider yourself doomed if you ever find yourself using an ERP system for any of these:

Reporting and Analysis: ERP system can out put reports in a number of formats, but typically they cant build well constructed dashboards, which are tailored to your companies specific needs, and/or ones that can be quickly adapted and changed over time as the needs of the business change. And forget it if you want to do some sort of analysis that the System Architect didn’t think you’d need to do in the 2 month he was specifying the system for your company 3 years ago. (Not that that would ever happen of course…).

Changing the model: ERP systems provide various forecasting tools, is getting the best results from them a skill or a science? Do you even know what equations are being used, it’s unlikely because this is the IP of the vendor, and what about data sources, is that data from the Spanish plant accurate, if it’s not can you do anything about it? Not all that flexible are we!

Your team just grew: Better get your wallet out…

You want someone form out side the organising to use the system: No.

You have a new data source that you’d like to add to the model: Humm, can you see where we’re going…

And so on…

In conclusion neither ERP systems or Excel can doom your supply chain and comparing one against the other as a way to high light a weakness is a logical flaw. Neither ERP systems or Excel are inherently good or bad, badly designed and/or used spreadsheets are a business risk, just like a poor quality ERP system or ones that are used poorly are a risk. Each “system” has strengths and areas where their use makes sense, and this are extremely well document. Likewise the “miss use” of Excel and the motivations for this are also well document, and note – not all of them are unreasonable.

I take exception to the two blog posts because as well as misrepresent the capabilities of Excel, they also give poor or misleading reasons as to why it’s use is dangerous, also they both take one or two valid, but already extremely well understood points, and extrapolate them to reach irrational end points.

So were doe this leave us?

Well, here are some of my thoughts on what you should do to help you avoid risks if your using spread sheets (for anything really)

  • Design you spread sheets well from the ground up (here, and here for help)
  • Understand connected or discounted data sources
  • Learn how to connect to enterprise data bases.
  • Learn about versions, and version control and try to apply it
  • Think about risk, and except it explicitly if you have to

And there ended the rant ;-).

Excel Funnel Charts

Funnel charts don’t make sense. But if theres one thing we can all agree on then its that everyone else is stupid, well maybe not stupid, but not as smart as me and you, thats for sure ;-))).

So people want funnel charts, give them their cakeJon (Peltier) and Chandoo have some examples. Here are mine which are a little diffrent.

Method 1, is 2 stacked bar charts. The first charts picks up the data ratio, and the second shapes the funnel. I’ll not explian how to do it, you just have to nest one chart ontop of the other and set up the section width etc, dissect the chart in the example file if you want to find out more.

The good thing about this method is that it will scale well, the down side is you need a load of data points to shape the funnel (I’ve used 100, but you can use more if you like – smoother).

The next method is simpler/easyier to do, its the same stacked bar chart for the data, but this time with a XY scatter plot on top to which a couple of custom shapes have been added as markers. This has the advanatge of being relativly simple, and you can go to town on the shapes if you wanted. The down side is it does not scale well at all.

So if you’re looking for a 1/2 decent funnel chart (even though you know better) these might help. Enjoy!

Download the M.I.E Funnel Charts example.

Advances in Apples’ Charting

Today I was reading Apples Supplier Responsibility and saw this masterpiece of visual lies!

The caption underneath the figure says

“As of December 2009, Apple has audited 190 facilities located in  China, the Czech Republic,….”

Maybe suggesting they’re trying to show the combined total, with a yearly split? Whatever the intention was, the chart is poor, here’s what it might have looked like (not even stacked)

Which, I think, does show a slightly different story to the first chart. I’m not sure why the colours are different either, and I can live with out the roundness, here’s what I would have done….(I would even of gone back and added the “s”!)

So there you go, even the mighty Apple get it wrong sometimes… even if it is deliberately on purpose ;-).

Spreadsheet functional programming

In his recent paper Spreadsheet functional programming, Dave Wakeling discussed the idea of using a functional programming language from within a spread sheet.

It’s an interesting approach, because the implementation effetely allows you to write code (in this case Haskell) in cell comments, in such a way that the results are computed on the fly – i.e. not complied.

As you might expect, there are a number of issues with the implementation from a practical stand point, but that’s not what I’m interested in here – I want to talk about the concept of functional programming in relation to spread sheets, which this paper also focuses on.

It’s my view that a spreadsheet is a functional programming language. This means that I have an issue with the goal of the paper, which is:

“Our hope is that by doing so, we might get spreadsheet programmers to give functional programming a try”

Nothing wrong with that, but my views that spread sheet users already are functional programmers!!! So why them might we want to use Haskell with Excel? Towards the end of the paper Wakeling suggest some possible strengths to this approach.

1. It uses an ordinary spreadsheet. The functionality of, experience with, and Support for a familiar product all carry over.

2.  It uses an ordinary functional language. The benefits of such languages also carry over. (Backus, 1978; Turner, 1982; Hughes, 1989).

3. It can accommodate any pace of change. The old way of doing things can coexist with the new one.

Unfortunately I don’t agree that these are real benefits. Oh dear! – Why?

1. This is a case for anything that  integrates with Excel; the benefit is independent of what it is that’s being integrated.  This is the benefit of using a spread sheet and a programming language over using a programming language on it own.  It’s tenuous to claim it as a strength.

2. The benefits are true of Functional v’s Imperative programming languages (lasy, high order functions). Since Excel functions operate in a very similar way to functional programming these benefits don’t really exists between Excel worksheet functions and a functional programming language.

3. This statement is true of any situation where the 2 technologies can co-exist you could say the same about using C, VSTO etc, etc, again it’s really tenuous to claim it as a strength of any like for like approach.

So if these strengths are not in fact all that real, then why would we want to use a functional programming langue with spreadsheets? Perhaps a clue is given in this passage:

“On the positive side, many everyday programming errors are detected that would otherwise lead to incorrect results, including dangling cell references, undefined functions, and functions with the wrong type of arguments.”

I can see how using a more “strongly typed” language could possibly help reduced type errors, not sure how undefined functions would be helped or how “dangling cell references” (in fact, I don’t know what this means at all) would be effected.  Generally further discussion and justification of the benefits of using a functional language with a spreadsheet are needed to build a case for doing so.

The paper did not convince me that using a functional language has any really benefits to using worksheet functions or any other programming language. Having said that, the paper does show that its possible to link technologies like this and it’s another interesting approach to programming spreadsheets. The prospect of F# and XLDNA and F# in VSTA/O are also interesting things to start thinking about!  The application of functional programming languages within spreadsheets is interesting  and Wakeling should be congratulated for opening up the debate for future discussion– as hopefully this post will do too!