Main
Posts
Links
Guest Book
|
Home
JohnWargo.com
|
Sunday, 07 February 2010 20:42 |
|
I've been trying for some time now to get the open source SugarCRM Customer Relationship Management system to work on a couple of my web sites being hosted by FatCow. It just doesn't work. After trying FatCow's automated install several times (which worked, but Sugar wouldn't run after the installation completed) and many manual installations of SugarCRM 5.5 (the latest version) I decided to give FatCow support a call. FatCow's usually awesome and sine they're giving me so much for very little money, I try not to call them too often.
I spoke with a tech who told me what I was asking for was more complicated than he could handle (I like honesty) he immediately escalated me and I spoke with a guy (Jordan I think was his name) who understood my problem and got to work. He immediately tried their automated install - it failed with the exact same errors I was getting (validation, I love it). Then he downloaded the latest community version files (free) from the Internet and did the installation himself - it failed again (even more validation that my error was reproducable). He opened a ticket and promised to escalate it to Engineering.
I waited a couple of days and received several emails from FatCow as they tried to work through my problem. Of course, some of the messages I got were related to the technicians just not reading the case history (I hate that and FatCow does it all the time - phone support is AWESOME, but dealing with online support is HORRIBLE for that reason alone). They finally told me that were able to get it installed and operational. Unfortunately they installed an old version (4.4, I'm trying to use 5.5), they installed it in a location different than where I asked to have it installed and they REFUSE (yep, absolutely and repeatedly refuse) to tell me anything except that they have it installed. I've asked what they did to get it to work - won't tell me. I've told them that I need 5.5 to work, not 4.4 and the only response I get is 'SugarCRM works on our systems' - nothing else. Arghhhhhh! These guys are usually so good but in this case, they're absolutely refusing to actually help me with my problem.
Now, I know FatCow doesn't 'support' SugarCRM, but they'll install it for me and it's just PHP, MYSQL and some other stuff - it should work just fine, right? Every single other product I've tried to install on their systems work just great (Joomla!, Drupal, vBulletin, phpBB and more).
I've been working with the folks on the SugarCRM forums for help and finally got a chance tonight to look at one response where another customer is having difficulty with SugarCRM on FatCow (http://www.sugarcrm.com/forums/showthread.php?t=56281). So now I know it's not just me having troubles. I'm stil lnot getting anywhere with FatCow support - for the 10th time now I've said 'please, why won't you answer my questions' - I'm going to call tomorrow and see if I can get a manager on the phone or speak with my original tech since they are clearly demonstrating that they're not interested in helping me.
Their service is so awesome for a very reasonable amount of money that I hate to complain. The issue though is that I'd gladly pay more money per year (I already have two accounts just so I can give them more money - I'm serious) to get the help I need but they just don't seem to care. |
|
|
Thursday, 04 February 2010 08:43 |
|
As part of my family’s move to Charlotte, it was time to start looking for a new bank. We selected Bank Of America and proceeded to setup our new accounts. It occurred to me to take a look to see if the bank had an iPhone application and I was pleased to find that they did. I downloaded the application from the iTunes and proceeded to launch it. When the application starts, it presents you with the screen shown in the following figure.

Figure 1
You can then define your account login information (including the same additional security measures Bank of America uses on their desktop browser application) and access all of your accounts and transactions. It’s pretty cool and I like it. I’m not going to show you this with my own accounts (yes, I blanked out my login name in the figure below), but I’ll describe it. What you see after you login is a list of your accounts. When you select an account, you’re provided with a list of transactions and other information.
 Figure 2
The only complaint I have about the application is that it’s very sluggish – after you login and start navigating through the account information, the screen response is very slow. Whoever wrote the application apparently didn’t know how to optimize the menu items and so on to provide the best user experience.
Where the What Were They Thinking stuff begins is when you look at the BlackBerry version of the application.
I didn’t expect that there’d be a BlackBerry version of the app. It wasn’t until I’d used the iPhone version for a while that I thought to look in the BlackBerry AppWorld for the app. Surprise of surprises – Bank of America also offers a BlackBerry application. So many times, vendors decide that all people care about is the iPhone application and skip other platforms. In this case, they are trying to accommodate multiple platforms. The problem is that they didn’t implement the same features in the BlackBerry version of the application.
When you open the BlackBerry version of the app, you see the screen shown below.
 Figure 3
It looks like the same features of the iPhone application. When you open the ‘Locations Near Me’ option, the application uses the GPS information available on the device to determine the location of the nearest bank locations – very nice. When you click on ‘Mobile Banking Sign In’ you’d think it will prompt you for your credentials and allow you to view account information (just like the iPhone app). Nope, that’s not how it works here. When you select this option, you’re presented with the following screen.
 Figure 4
What???? The Browser? What were they thinking? The iPhone application shows an interactive list of accounts then allows you to browse the account transactions inside of a native iPhone application. The BlackBerry application launches the browser and gives you the exact same functionality you’d get if you fired up the browser and typed in www.bankofamerica.com in the address bar. The browser???
Eventually you get to the login prompt and you just have to deal with the mobile browser version of the site.
 Figure 5
What’s the point? It’s essentially useless except for the branch finder. I just don’t know what they were thinking. The bank spent the time and money to build a fully functional iPhone app but relegated BlackBerry users to a simple application that merely launches a particular URL in the BlackBerry browser.
Developers: Please don’t do this. The functionality the application needs to call on the back end to get the account information and account activity clearly exists (the iPhone application is using it) and the BlackBerry platform supports the exact same application capabilities that the iPhone does (the same API’s are generally available across both platforms) so why the dfifference? I bet it was harder to do for the BlackBerry and it will take them some time to deliver parity. I’m OK with that – UI’s are just easier to build on the newer platforms (iPhone, Android). But the BlackBerry can call any service on the back end and process the data – just like the iPhone app. If it’s too hard to build the long list of account transactions like used in the iPhone application, just have the server return the activity as HTML and render it in a BrowserField in the BlackBerry version. You’d still get the same data and you can make it look like the iPhone application (although on non-touchscreen BlackBerry devices it won’t be as easy to navigate. You could always intercept the click within the browser field and open up the selected account activity record natively.
Anyway, my personal opinion is that hybrid applications for the BlackBerry should be avoided at all times. If you need to launch the browser to provide your application with specific functionality then you’re not really trying to build a BlackBerry app – all you’re building is a shell program that uses the browser for its heavy lifting and I’m really not interested in using that kind of application. |
|
Friday, 29 January 2010 09:19 |
|
Robert X Cringely used to publish on www.pbs.org and now publishes his own blog at www.cringely.com. He has done a bunch of cool things related to the PC industry over the years – including being the author of Accidental Empires: How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can't Get a Date which I really loved.
Anyway, he writes about US Security every once in a while and recently published the following regarding how hard it was for US Officials to determine whether this Christmas Day Bomber was a terrorist:
“Instead of just complaining, let’s take a look at the issue from another angle. Contrast these three situations: 1) you are sitting in a hotel bar in Mongolia and want to use your Visa card to buy a round of drinks for your friends, and; 2) your Mom is at the check-out counter at a Sears store when the clerk asks her if she wants to apply for a Sears credit card and save 10 percent on her order, and 3) a possible terrorist with a dubious travel record and suspected al-Qaeda connections is standing in line at a European airport waiting to board a flight to the U.S. that leaves in an hour. What happens in each of these cases?
In Mongolia the bartender takes your card and authorizes it in seconds across a 12,000-mile round-trip. At the Sears store the transaction is not only authorized in less than a minute, but a new account is created and both your Mom’s identity and her creditworthiness are established and calculated on the spot, along with her discount. Meanwhile the airline, airport, local security, European police, Interpol, Transportation Security Administration, Department of Homeland Security, Customs Service, FBI, CIA, and NSA can’t between them figure out in an hour whether this guy standing in line in Holland should be allowed on the plane or not.
How is it that we can run our credit card operations so well and our national security so poorly?”
He’s right and has every right to be mad. Read the full article: http://www.cringely.com/2010/01/predict-me-im-from-the-government. |
|
Tuesday, 26 January 2010 08:00 |
|
As I mentioned last week, I’d been trying to build an Android application for my rich client session at Lotusphere 2010 (AD114). I got off to a very late start, but with the right resources I thought I could throw something together to show in my session.
I took the XML-based web service I created for the BlackBerry Java and Windows Mobile examples (they both provide native support for XML-based web services) and created a new one that used Representative State Transfer (REST) to process the request and return some JSON with the results. The agent is working great, I’ll write about it in a little while.
I created a Android Java project in Eclipse and started coding through my sample application, reading a couple of books as I went. I got the main application working, got the search box and the button that called the service working and was finally able to connect to the local Domino server to request the data (read about that here). As I tried to figure out the Android ListView widget, my application crashed and I just couldn’t get any further. I poked and prodded in Eclipse and the simulator and just couldn’t get anywhere. Whenever I load the application, I get the following screen:
 It’s something in the startup of the application, but it’s not telling me anything about the source of the problem. On the flight home, I read more about the LogCat view in Eclipse that would allow me to see what Android is saying when the application crashes. It turns out that there’s an uncaught exception being generated when the application starts. Here’s the relevant log lines:
01-25 15:57:16.082: ERROR/AndroidRuntime(244): Uncaught handler: thread main exiting due to uncaught exception
01-25 15:57:16.092: ERROR/AndroidRuntime(244): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.johnwargo.contactlookup/com.johnwargo.contactlookup.main}: java.lang.ClassCastException: android.widget.TextView
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread.access$2200(ActivityThread.java:119)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.os.Handler.dispatchMessage(Handler.java:99)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.os.Looper.loop(Looper.java:123)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread.main(ActivityThread.java:4363)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at java.lang.reflect.Method.invoke(Method.java:521)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at dalvik.system.NativeStart.main(Native Method)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): Caused by: java.lang.ClassCastException: android.widget.TextView
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at com.johnwargo.contactlookup.main.onCreate(main.java:58)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459)
01-25 15:57:16.092: ERROR/AndroidRuntime(244): ... 11 more
At least I know what’s happening now – all I need to do now is figure out the source of the problem. I’m disturbed that I’m not getting more information in the UI about the problem. On the BlackBerry platform, you’d get an error message identifying that there is an uncaught exception and listing the exception that should be caught. If I had that information, I think I could find this problem pretty quickly.
OK, so I dug into the code and found the problem. I was using EditText and TextView widgets to create some of the UI. EditText widgets to accept user input and TextView widgets to display some text on the screen. When playing around with some things, I’d inadvertently cast the TextView as an EditText object (that happens some time when you’re copying and modifying code). As soon as I changed the cast to TextView, the application is running again. Woohoo!
The line containing the information I needed is here:
01-25 15:57:16.092: ERROR/AndroidRuntime(244): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.johnwargo.contactlookup/com.johnwargo.contactlookup.main}: java.lang.ClassCastException: android.widget.TextView
Next step is to figure out how to use an Android ListView widget to display the array of names that is returned by the Domino server. Stay tuned… |
|
Saturday, 23 January 2010 07:45 |
|
OK, so I work for AT&T now and that focuses me more regularly on AT&T-related topics, but I'm trying to write about them only when they apply to a wider mobility or telecommunications topic. I was poking around today and discovered AT&T's Public Policy Blog.
While probably not very interesting to people all around the world, but I did find some interesting articles about AT&T's response to the FCC regarding Network Neutrality. This topic has fascinated me for a while and the Jury's out (as far as I'm concerned) whether the results of this whole argument is going to be a good thing or a bad thing for me (us). I know I want to be able to do whatever I want with the network pipe my provider provides me and at the same time I understand the network provider's concerns about how their network is being used. Ultimately it should be the consumer's who's rights are protected (I know, I'm baised) but the result if we have our way will be that the network providers will ultimately charge us more for what we get - just to protect their investments in network upgrades and management hardware so we can have what we want.
Anyway, the site has several exhibits AT&T sumitted along with its response to the FCC that highlight some of the background details and outline what many think will happen depending on how this argument goes. I'm printing out hundreds of pages from the articles right now to read on an airplane in the next couple of weeks. i'll probably have more to say once I've read through all of them. Stay tuned. |
|
|
|
|
<< Start < Prev 1 2 3 4 5 6 7 8 9 10 Next > End >>
|
|
Page 1 of 18 |
|
|