Salesforce Error: “Mismatched integration value and ISO code for field: Country Code,”

I was trying to import a .csv of Lead data into salesforce today.  Salesforce’s import tool is terrible and you have to use something from the AppExchange to get error messages.  You’ve probably already discovered that if you’re reading this post.

Anyways, I found that the issue with trying to import any data with a country outside of the United States was because the Country and State Picklists had the United States set to the default country.  I changed that default to “none” and the exact same import file ran flawlessly.

I hope this saves someone else some time someday.

One Man Conference Marketing Journey

I showed up at ISTE13, one of the biggest edtech conferences of the year, Sunday night with a great plan on how to make the most of my conference.

I had a couple of meetings setup, a few other individuals I was going to seek out, and I was also going to be distributing some content intended to get teachers to take a closer look at our products.  This post is about the process I went through in making my handouts work well.

I was armed with a few hundred Teachers.io pens and a thousand myHomework stickers to try and make an impact on upwards of 15,000 people.  Not a small task by any measure given I was going to be spending most of my time trying to network.

Attempt 1: I started out with the easiest thing possible and just started throwing small amounts of stickers and pens out on high traffic areas.  I would then wait for a few minutes and watch the behavior of the people picking up the items.  The pens were the first to go.  Too often, one person would take every pen on the table without even looking at the brand.  Even if I spread the pens out across the table with lots of spacing, they had that swipe down.  The one positive is that I quickly identified which tables were places people were stopping to look at material vs. just stashing straight in the conference bag.

Attempt 2:  Start conversations and get permission.  These conversations were invaluable but would take as long as 15 or 20 minutes and would end with me asking if they wanted my handout.  Every time they said they did.  However, while both I and the teacher/parent would learn a lot about each other, it wasn’t a very scalable approach to getting our name out.

Attempt 3: I tried walking up to people and giving them a 20 second overview of what we did and then seeing if they wanted the pen or stickers.  A few were receptive, many were not happy that I’d interrupted their silent walk.

Attempt 4:  Try to attract walkers from a high traffic area to come to me by being a little bit like a ballgame vendor.  A few would come over, but without a bigger act ( all I had was a bag on my shoulder with some pens and stickers), most were too busy to notice or were wishing that idiot would stop shouting.

Attempt 5:  Redesign the handout and place it in the high traffic areas mentioned in Attempt 1.  I attached a pen to a few stickers.   I put some down and watched.  Sometimes, the interaction was much more thoughtful and other times it was not.  Some took as long as a minute to decide whether or not to take it.  But why?

I thought about it and realized that when the pen was hiding the word “homework” was when they were having fun discovering the meaning of the handout.  So when a person could clearly see “I NEVER FORGET my” and had to move the pen to see the word homework, was when the interaction was most thoughtful.  I put some down carefully making sure the word homework was covered to test my hypothesis and watched.   Nearly every encounter took at least ten seconds.  And perhaps, even best, was that the pen hoarders were thwarted and would just take one pen leaving the stickers on the table.  I spent the last day and half loading the best tables with these handouts and 

End ranking of my attempts:

  1. Attempt 5: On pure handout, even though on the face of it the pen + stickers cost more, it was most effective for the time spent
  2. Attempt 2: Most effective was a personal conversation closed with any item to remember me
  3. Attempt 3: Walking up to people, giving them the 30 second pitch and asking them if they wanted the pen + stickers
  4. Attempt 4: Shouting the pitch to try and attract an audience and then give away stuff and answer questions
  5. Attempt 1: Just putting stickers separate from pens resulted mainly in conference hoarders just taking tons of pens or stickers

One other note:  Teachers at this conference strongly preferred a pen to a  sticker and either a pen or a sticker to any type of informational flyer.

The Art of the Sale

I was at the Kauffman foundation a few weeks back to hear Philip Delves Broughton present on sales and touch on his book, “The Art of the Sale”.  Beforehand, I had never heard of the book. After meeting Broughton and listening to his demeanor, I knew it was a book I had to read.  He wasn’t a salesman, but had been through business school and was never put through any academic sales training.

My small company, instin, is right now at a position where it needs sales more than ever so this has been a timely read.  I’m pretty much a sales rookie in terms of experience but I have grown up with a father as a salesman and read quite of bit of sales literature.

I found this book to be quite informative and a welcome change from the other sales books I’ve read.  Most other books focus on selling as a means to get rich.  From the onset, Broughton establishes his purpose for researching and writing to be to discover what really drives great salesmen.  And while he finds examples of both those who are fooling themselves in order to sell a product they don’t care deeply about (i.e. life insurance reps), there are many more examples of those who are out there selling in order to help the client.

Since sales is a necessary part of any economy and in some ways every single life, deciding how and why we sale is integral in determining whether or not we’ll be successful.  In my situation, I am selling advertising to students so that we can continue to offer great products directly for students and now teachers without sacrificing any of the user experience.

All in all I found this a great read and would recommend it to others.  The only part of the book I disliked was when Broughton tried to explain or break down a few of the success stories scientifically.

I’ve Never Been Fired From a Job I Cared About

I had a nice conversation the other day with one of my friends who is also an entrepreneur out on his own.  We were talking about the ins and outs of managing a team and what style has or hasn’t worked for either of us.  We also touched on how hard it can be to tell somebody they’re fired.  We’re not all Donald Trump.

Anyhow, in the midst of the conversation, one line popped out of my mouth that I thought I’d share – “I’ve Never Been Fired From a Job I Cared About”

Sometimes poor performance is a plea to get tossed.  Or other times the person is just in a job that doesn’t fit their talent.  In the end, many times firing really is the right thing to do for both parties.

The Biggest Reason Not to Read “The $100 Startup”

The tagline on the front of the book reads…“Reinvent the Way You Make a Living, Do What You Love, and Create a New Future”

This sounds fabulous, but what it doesn’t tell you is that – The entire book is focused on creating micro-businesses.  

What’s a micro-business?  Simply put, a micro-business is intended to provide maximum freedom by keeping a business as small as possible but still providing enough income for a nice lifestyle.  Every business discussed in the book is small both in terms of revenue and in terms of company size.

If you’re interested in building a nice scalable business, then the focus on micro-businesses is the biggest reason to pass on this read.

After reading this, I’m surprised it was chosen for a handout at Big Omaha since most of the attendees there are interested in trying to be one of the next successful tech startups.  The other book, Delivering Happiness, which I reviewed previously was a better fit.

That said, Chris Guillebeau did a nice job laying out many of the creative approaches that micro-businesses are using to be successful.  Some of these tips and approaches would apply to a tech startup and others would not.

Overall, I liked most of the advice on staying small and using some ingenuity in the way we market and produce our services/products.  I plan to go back and do some of the exercises that were a part of the book to review my sales pitch and work on a pricing model among other things.

I would recommend this book for someone who is unhappy with their day job or has recently become unemployed.  

And I’ll leave you with a couple of my favorite quotes:

“I spent some of my time learning how a real business works, but I didn’t let it interfere with a busy schedule of reading in cafès during the day and freelancing as a jazz musician at night.”

“To start a business, you need three things: a product or service, a group of people willing to pay for it, and a way to get paid. Everything else is completely optional.”

A Brief Technical Professional Bio

I was asked by a friend yesterday for a short biography of my technical professional accomplishments so I figured why not throw it on the blog.

Computer Engineering at Purdue

I went out of state to attend Purdue because of the quality of their engineering school.  The computer engineering degree gave me a great foundation in both electrical and software engineering.  

By the time I was a senior, I knew I enjoyed software and web development in particular.  One of the electives I worked on there was a Java website for volunteers and agencies to connect and fill open volunteer slots.  I was using CVS, tomcat, and automating tests with Junit.  Graduated in 2004.

Database Performance at Cerner

I then joined Cerner over an equally competitive offer from IBM mainly because of the benefits of a gym at Cerner.  Neither company was offering me web dev.

I spent about a year doing database performance primarily for Oracle.  During my time, I wrote the book and class for which most of Cerner engineers eventually went through to learn how to troubleshoot and improve the performance of a traditionally used relational database.

Although I was doing well, I wasn’t happy with this work.

Java Web Services at Cerner

Then I was able to join a web development group.  When I joined, we were doing all kinds of things worse than the Java sites I had worked on in college.  It was a big Struts site using Apache Tiles, Jsps, an Oracle db, building with ant and deploying on WAS to top it all off.  It took over a month just to get the local development stack set up.

A year later and I’d done a bunch of i18n, SOAP services, paypal, and other kinds of work, but for the most part the stack remained unchanged.  A little after this at the beginning of 2007, I was promoted to lead the team and we made a bunch of wholesale changes.

Local development started to be on jetty, tomcat became our dev server, and we saved WAS hell until pre-release.  We upgraded to struts 2, fixed the crummy urls, switched to sitemesh & freemarker templates and began using SVN with maven builds.

It was a little better, but I kept grasping for more.  I played with GWT, play, Rails and others but ultimately Google app engine introduced me to django and I couldn’t get enough.

Python Web Development at Home and Cerner

I was fortunate enough to have a manager and cohort, Ryan, be very supportive of switching to python+django and we dumped java for new development.  At the same time we began working on nyroo.com outside of work work.  We coded up a site that used twitter and facebook apis to let you share lists of concepts with your friends.  Google search apis ( which are no longer around) made it easy to embed images, videos, or links to content in your lists.  We deployed to EC2, ran mongodb as a backend, and rolled a basic nginx/apache django stack for our app server & content.  

It wasn’t long before we had introduced much of the side project learning back into the company and we ended up creating the most efficient teams building websites inside of Cerner.  Along the way we learned some lessons on development from Etsy and other forward thinking companies.  Eventually nyroo got boring so we tried something else…

instin & myHomework

Mobile web sites and skinning the site for any device we’d pretty much mastered so we moved on to native code.  We picked up a third guy, Rodrigo, or you could say Rodrigo picked up us 🙂  After 15 months of building ios, android, and web that all worked together, we had a product successful enough that we thought we could take it full time.

And that’s where we’re I’m at now.

I left out a ton of details and buzzwords but hey, it was supposed to be brief.

Quick Review of Delivering Happiness by Round Table Comics

I just got finished reading the comic book version of Delivering Happiness: A Path to Profits, Passion, and Purpose.

This was one of the two books given out to everyone at Big Omaha this year.

Quick and Entertaining Read

Front to back, this book only took me a little over an hour to finish.  The comic book layout makes it fun to read and makes the story flow quickly.

Lacking in Depth and Explanations

As you might expect to happen with a book this short, there wasn’t much detailed information about the what’s and why’s regarding most of the decisions.  You get a high level story of Tony Hsieh, the zappos CEO, and then the book ends with an overview of some of the simple lessons he’s learned.

Each of three different happiness frameworks is explained on a single page.

This is a Great Book for Business Leadership & Management Classes

The succinct nature of the book would make it ideal for reading with a class and then being able to go into more detail as groups on the different pieces of the book.

If you’re purchasing a book to read on your own, I’d say you can find something better…perhaps just go with the text version of the same story.

My Favorite Quote

After he’d already made millions of dollars on the sale of Link Exchange, and before fully committing himself to Zappos, he found himself asking his friends “What do we want to be when we grow up?”

I’m not sure why that particular piece stuck with me but it does have some strong parallels to some of the questions I was asking that ultimately led me to quit my day job.

How to Upload a Sign In With Facebook App to the Amazon Market

The Amazon market signs apps in a way that will break your app if it uses Sign In with Facebook or any other solution that depends on the signature of the app matching what’s input into a developer site ( Google maps is another example).

Contact Amazon 

Contact through the developer portal and tell them that you have this problem.


They will set up your account so you can sign the app yourself.

Here’s the steps they sent me ( Directions for steps 7 & 9 will follow).
1. Log in to the Developer Portal 
2. Find the app you want to sign on the My Apps page 
3. Mouse over the Actions button for that app and select App Details 
4. From the application details page under the Upload Binary section, click Edit 
5. If you already have a binary uploaded, click the Remove button 
6. Make your DRM selection and select No, I will sign my binary under Signature 
7. Upload your unsigned binary (shown as Step 1. Upload unsigned binary)
8. Download the processed binary (shown as Step 2. Download processed binary)
9. Sign the downloaded binary
10. Upload your newly signed binary (shown as Step 3. Upload signed binary)
11. Click the Done button 

Upload your unsigned binary 

If you’re like me, you’ve never exported an unsigned binary.

Here’s the docs from google…http://developer.android.com/guide/publishing/app-signing.html#releasecompile

For eclipse peoples, here’s what it says:
To export an unsigned APK from Eclipse, right-click the project in the Package Explorer and select Android Tools > Export Unsigned Application Package. Then specify the file location for the unsigned APK. (Alternatively, open your AndroidManifest.xml file in Eclipse, select the Manifest tab, and click Export an unsigned APK.)

Note: When I did this on my macbook, I had to edit the source code of the amazon website on this step to the right file path because the filepicker tried to do something strange and used C:/fakepath/….

Sign the downloaded binary 

Then after downloading the processed amazon file, you’ve got to sign it command line using jarsigner and zipit.

http://developer.android.com/guide/publishing/app-signing.html#signapp jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore /Users/youruser/name.keystore unsigned-amz.apk keyalias

Now the unsigned-amz.apk is signed. With some extra parameters you could create a new one instead.

The final step is a zipalign command for performance.
zipalign -v 4 /path-to/unsigned-amz.apk /path-to/signed-aligned-amz.apk

That’s it.  Upload it back to amazon.

Low Speed Error L51 for Sole F63 Treadmill

I moved my treadmill and afterwards trying to turn on the treadmill just resulted in it giving an L51 Sole Low Speed Error.  I’ve finally gotten my treadmill working again and figured I’d post my experience to hopefully help somebody else out since I couldn’t find much online.

Owners Guide on L51 Sole Low Speed Error

Before contacting Sole, I tried out the easy stuff in the Sole F63 owner’s guide regarding the L51 Low Speed Error:
– try to calibrate
– adjust the speed sensor

Neither had any impact.

Consulting the Web

I searched and browsed and found quite a few tips in different places. Most of the advice I found beyond calibration or adjusting the speed sensor were also in the owner’s manual under general maintenance. For example, livestrong.com recommends cleaning, tightening|lubricating the belt & checking the power supply.

None of these helped me either.

Contacting with Sole

Then we contacted Sole and they sent us a box of stuff without having us do any real troubleshooting.

The box had a new controller board, a new speed sensor, and some new wires to connect the main control unit.

Advice here is that as you try out the new pieces, don’t undo any of the nice twisty ties that have the existing wires in place or take the wire out of the front right leg. Just run the wires to the side quickly to eliminate whether or not they change the symptoms. Also take pictures of the wiring to the mother board so that you have a nice easy reference. Here’s one of my pics that made it easy to put it back in place.
Motherboard during L51 Sole Low Speed Error Troubleshooting

Likewise, monitor the behavior of the controller board. My symptom was that the mother board would get power, a red light would come on, and then it would make a single click. Never a second click.

I was able to prove the motor worked fine by hooking up the power to the battery from my cordless drill. This one really impressed my wife.

I called Sole and they sent me another motherboard to swap out which didn’t change any symptoms.

A Resolution

The piece that finally fixed it was a whole new console. The explanation here is that the click from the mother board was sending a signal to the console saying it was ready for commands but the console was never responding telling it to turn the motor on and get running.

Another Resolution

The man in the video below had a similar issue and completely relocating the speed sensor was what finally fixed it for him. If you’ve replaced everything else, then you may want to check out the video below and the comments section to learn more about how relocating the sensor fixed the issue for him.

In Summary

If you’re getting the Sole Low Speed Error when trying to turn on your Sole F63 treadmill, then the Sole support team may be very helpful as they were in my case. However, you may be left to do quite a bit of troubleshooting on your own. The nice thing is that at least in my case, sole was willing to keep sending out parts as long as I would do the work.

Android Phonegap Native Timepicker

So I’ve been working on a simple android app and I finally got audacious and started to move beyond the basics. I was able to get an app in the store with just my HTML/JS/CSS skills pretty easily which makes phonegap a big success.

Anyhow, now my latest fiasco was to try and use the native android timepicker and while I’ve still got a ways to go, I wanted to post my working code that I also put back on a discussion I had with myself on the google group.

FWIW here’s what I’ve got working.

A simple TimePicker class with a showTimePicker method.

public class TimePicker {
private DroidGap mGap;

public TimePicker(DroidGap gap)
{
mGap = gap;
}

public void showTimePicker(){
mGap.showDialog(HelloWorldPlugin.TIME_DIALOG_ID);
}
}

A custom TimePickerDialog.OnTimeSetListener which is initialized with
knowledge of DroidGap too…

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
mGap.sendJavascript(” callback javascript goes here!”);
}

Initialize and add the createdialog stuff like the android dialog
tutorial.

TimePicker timepicker = new TimePicker(this, appView);
appView.addJavascriptInterface(timepicker, “TimePicker”);

Then in the javascript, once phonegap loads, you can refer to the
timepicker:

window.TimePicker.showTimePicker();

Hope that Saves Somebody else some time or inspires somebody to show
me the ways of the plugin framework.

 

As I get better at this stuff, I might end up understanding how to do it within the plugin architecture but for now that’s it.

Cheers.