If you've taken a look at my work history, I've supported a lot of OLTP (online transaction processing) applications. The latest being ServiceNow. An OLTP's backend is really just a bunch of tables with columns referencing one another to create a relational database. This is exemplified nicely when you tag an order or case to a customer record and you can see all the orders/cases by that customer. The OLTP is not without flaws: it's purpose is to capture transactions and not necessarily report against them. You don't have to worry about duplicates as every record is unique, but you will have to worry about query times. An OLAP (online analytical processing) cube is a database model that inverts the pros and cons of an OLTP.
Yet, all the software products I have supported can do reporting. The customers demand it. For instance, ServiceNow has one of the best reporting engines I have seen providing a "what's happening now" indicator and a "what has happened in the past and are we better off" metric comparison. Technology has also gotten better for OLTPs to do reporting as technology, memory, and processors are pretty cheap and usually maintained (and scaled) by the Saas provider. There really isn't a reason to export data to a data warehouse unless (1) your company set an initiative to centralize all reporting to a Business Intelligence tool such as BusinessObjects or Tableau or (2) the use case I am about to describe. This is the ONE use case where an OLTP does not do well, but an OLAP cube can handle well - it's the mid year organizational change story.
This happens in every organization. You have a hierarchy that rolls up to the CEO or a list of portfolios that house many projects. One day, a re-org occurs so your department doesn't roll up to that region or that project rolls up to another portfolio. You can probably see where I am headed with this -- the second you make this hierarchy change in your OLTP, all the EXISTING associated transactional records will shift as well. That means all existing incidents in your department just got shifted to another department. That also means all your actual costs already incurred in your portfolio just got shifted to another portfolio and you're well below budget! This is the benefit and the curse of the relational database. You can make a change without updating existing records, but your reporting will probably be inaccurate.
Let's take this scenario as an example. A business unit hierarchy has to change:
Above are the tables (Business Unit and Incident) and the record(s) associated with them. There is also a visual diagram outlining the change. To change the department without regard for reporting, you could simply make the changes in Bold in the “New State”. In the Incident Table, nothing changes as the reference identifier doesn’t change even though the displayed value might. This is the basis for a relational DB which most OLTPs (online transaction processing) are built on.
What you could do to fix this reporting issue is to run a process called versioning. So when Portfolio B disappears in the above scenario, you will have to add the text “DNU” (for “do not use”) to the end of each child and re-create the hierarchy under Portfolio A. This way, existing tickets stay under the old Portfolio B so the original roll up is maintained and new tickets will roll up to Portfolio A. No sharp increase or decrease. Here is what you would do to the BU hierarchy to version:
That's a pain. Now imagine you go through multiple restructures and it's usually not just one portfolio that gets bounced around.
Here’s how we can address this with a data warehouse. In the OLTP, we would create a new table that shows the relationship between a parent and a child hierarchy so that when you modify the relationship, the date and relationship are stored. We call this table “Organizational Timestamps”:
All the applications I've supported has some sort of scripting action that can perform this logic - whenever the parent field of the BU is updated, create a new "org timestamp" row with the previous and new values as variables.
Then you will translate all your tables to OLAP – the data warehouse DB – where “incident”, “BU hierarchy”, and “organizational timestamps” tables are bridged together.
This simplified version of the OLAP cube table could be derived from either a SQL query, R or Python script, or Alteryx job which would handle the logic to populate the right hierarchies based on an incident date value with the dates in organizational timestamp table.
Then you can run the report using a BI (business intelligence) application which will capture the historical roll up based on existing incidents (based on dates) and track new incidents under the current hierarchy. An OLTP is not the right tool for this type of reporting. A data warehouse is.
As more prospects and customers are embracing BYOD, that means the Surface Pro 4 your contact just purchased won't be able to see your Cisco WebEx. It is a known issue that WebEx and Windows 10 are not friends.
To boot, the URL link to load WebEx won't work in Microsoft Edge. Then when Chrome or Internet Explorer launches the URL, it gives a generic error message. The official response from Cisco: Windows 10 and WebEx don't work together. No apparent time for a fix either. Luckily, for most WebEx customers, there's usually an IT department that maintains that Windows 7 Enterprise is the OS of choice so internal meetings are fine.
So what is one to do when a remote viewer exclaims, "Hey! I am getting an error when I try to load WebEx!"
Sign up for a Join.Me account! It's a pretty nice (and FREE) service by the folks at LogMeIn. They'll give you a free trial of their Pro service for 2 weeks, but their free service is enough for Sales Engineers as a backup or parallel app.
After signing up, downloading the app (only those that share have to download), and logging in, you'll have an intuitive interface to work with.
The free user will be limited to a one-time code for the meeting, which is fine. Just read it out loud over the conference bridge.
Free accounts only allow 10 people (including you) into the meeting. That's plenty especially if you also have the WebEx meeting running in parallel.
Lastly, the major caveat of the free account is that the host can only share his/her screen. Yes, you read that right, the host is always the presenter and the only the screen can be shared.
I have gotten around that by running both Join.me and WebEx simultaneously AND I have to be the host of the Join.me. I will always share my screen with Join.me.
Let's hope WebEx gets their act together, but realistically, let's hope IT departments realize that WebEx is an antiquated product with crazy requirements (i.e. needs an extension in browsers to load meeting URL, installs a file by default [instead of loading temporary application by default] for viewers).
Quick travel tip for road warriors.
Hotels structure one side of the bed to be the "center" point. For example, one side of the bed provides easy access to the alarm clock, remote, and is probably centered for TV watching.
Sleep on the other side where most people do not ever touch! The mattress will be less used on that side offering a better night's rest for the work in store tomorrow!
A phone has become such a congested device that many people have chosen to start from scratch. However, there will always be apps that iOS or Android can’t provide you out of the gate. This post is an up to date listing of my current apps on my iPhone and my Android tablet. The entire set is almost entirely free. The apps listed aren’t mainstream — I won’t be listing Dropbox and WhatsApp on here or services like Venmo — unless that service/app deserves special recognition. So without further ado:
Last Updated (12/18/2017)
Messaging and Voice
Maps and Navigation
I use Feedly for my feeds. I dislike Flipboard and the official Feedly app because not everyone has 10 articles to read and I process information in lists, not quarter page ads.
Web and PDA
What are some of your favorite apps?
Almost all B2B sales are lost and won because of people. That's why the best sales organizations hire and retain the best even at a premium. To be the best sales engineers you not only have to be knowledgeable in your customer's business but also have enough social etiquette so that your prospects actually like you as a person.
While, we can treat our LinkedIn profile like a dating profile and list all the reasons why a person should trust us, that initial meeting and its human interaction will determine whether there is a professional fit. I stumbled across this article on "How to Look Smarter" on WSJ which should give almost everyone an "intellectual" edge in that first meeting.
I recently installed SideKick at the recommendations of one of the sales reps that is also an excellent prospector. While it is catered towards prospectors, sales engineers can use this as well. Let's start of with the product itself. SideKick's vision is to facilitate the business development by turning this:
and they do this in a number of ways. See this blog. If I was a prospector, sign me up. Up to 200 notifications/mo is free and the first month is all you can consume.
For sales engineers, there are a few uses:
Aesthetic details matter. WebEx screws them up on a PC. Nothing bad ever happens on a Mac so this article is only about PCs. Don't let it happen to you on your next demo.
Two things happen when you share your screen on WebEx:
Mobility is king. Every prospect will inevitably ask "Do you have a mobile application?" If your software has a mobile app or even a mobile interface, you'd be doing your product a disservice by showing PowerPoints with screen shots.
PowerPoints are great backups, but that's just it -- they're backups. Imagine if you mailed in your software demo by showing screen shots? You really should be working mobile applications into your demonstration. When I joined NetSuite, I sat in on a number of demos as part of my ramp and mobile was an afterthought and not positioned as a differentiator. As part of my checkpoints, I demo-ed via WebEx our mobile app directly from my iPhone. We quickly worked it into our golden demo flow and impressed our panelists. Technology sells -- Everyone wants to know how you did that.
I will be outlining my preferences for mirroring your mobile screen -- both for iOS and for Android -- on both Macs and PCs.
Oftentimes, a dashboard or a form can be very busy. This can be our doing (we want to demonstrate our powerful dashboarding capabilities) or it can be the prospect's doing ("I'd like to see the following KPIs..."). The best way to approach this is still to simplify and remember that less is ALWAYS more.
There will still be times we want to draw the viewer's attention to particular parts of the screen. What we DON'T WANT to do is move the mouse excessively to bring a viewer's eyes to a section of the screen. What we WANT to do is to create a theater mode by darkening non-critical (i.e. not part of your story) areas:
I use an application called Target (by Nullmass). It's a portable application that hasn't been updated since 2009 for Windows XP, 7, and 8+. I have yet to find anything like it for the Mac.
There is no installer. Simply double click and you'll see the application active in your taskbar. Now whenever you want to highlight the screen, hit Alt-1 and you'll get cross hairs to draw your rectangle. There are additional features, but I have found them rather useless -- I do not need to show each click with a ripple so that the viewer counts the number of mouse clicks, outline what I am typing (so when I create some Ctrl-Tab magic instead of a mouse click the viewer won't call me out), or set a countdown timer till the presentation starts (the demo never starts on time, right? -- and if you have time leave the screen on a self-explanatory report instead of the agenda!).
I've checked the Chrome store for an extension that does something similar, but to no avail. What are some ways you bring focus to a portion of the screen?
The problem with any browser is that you are limited to at most 2 concurrent log-ins (with Incognito/Privacy mode). There are times when you need more. At NetSuite, all solution consultants use NetSuite to manage appointments within our CRM module, but we often times have to demo or configure one or multiple instances with different credentials concurrently. While at CA supporting our Clarity PPM solution, I had to switch roles to demonstrate security and/or show different views. Having more than 2 sessions was mandatory.
The normal workaround is to have another browser like Safari, Opera, Firefox, and/or Internet Explorer active in parallel with the same restriction of 2 concurrent log-ins per application. But having multiple browsers becomes difficult to manage (Alt-Tab too much) and can be memory intensive and sometimes not even possible (i.e. Chromebook).
Enter MultiLogin for Chrome:
The extension will add a new icon to your toolbar. Clicking on that icon (in red above), will add a new tab with a number in front of it. It is a complete separate session like Incognito and the cache is not stored. In the example above, I have 3 separate sessions for NetSuite. I have never had issues with caching or data corruption. The 4.5/5 star rating speaks for itself.
In everyday life, this is useful too -- have 2 Google accounts?
- Update -
The extension is no longer available on the Chrome store. I have made a backup of the extension. It is available here. Other sites have made alternative suggestions, however, there seems to be some risk (read comments here). To install it: