topics:  main-page   everything   99things   things-to-do   software   space   future   exercise & health   faith  
  thought   web   movies+TV   music   mymusic   food   curiosity   tidbits   I remember   wishlist   misc   links


BB10: A Bumpy Road
July 25, 2012

Today is one of those days where one feels frustrated and discouraged by technology. My experience with BB10 development the last two weeks has been less than stellar. Below I will speak to some of the challenges in chronological order.

Custom QML components: Handling events of child controls

I created a custom QML component for my Baby Names app consisting of a label and a segmented control. But when I use my custom control, I need some way to handle events, such as the segmented control being clicked. While the QML tutorials RIM provides make it easy to expose properties, they don't describe how to expose signals of child controls.

I posted on the Cascades forum on July 4th and waited until July 20th before receiving a response. That's a long time to be held up with what seems to be a fairly obvious thing that developers should be able to do.

The response I received should be helpful, although the suggestion implies that the solution isn't nearly as baked-in and intuitive as I would have thought it should be.

Controls animating into place

I've noticed that when I load new QML files, the images animate into place.

For example, if the screen contains an image at position X,Y and it is of width W and height H, then the image becomes visible at coordinates 0,0 and has width 0 and height 0, and then animates into place by flying over to coordinates X,Y and growing to eventually be of width W and height H.

If I then click the "Back" button and go to that QML screen a second time, it doesn't animate.

Is this implicit animation intended? While implicit animations are rather amazing and a great tool to have, it seems counter intuitive to have screens use implicit animations when they are first loaded. It creates a rather unpleasant business and visual distraction when the screen is loading.

See this forum post

Update: This appears to be fixed with the new SDK.

No multi-line label control

When I implemented the instructions screen for my app, I needed a multi-line label. But BB10 doesn't have one yet, so the text entry control must be used and set to read only. When this is done, however, the text color is set to black, making the text unreadable on the standard charcoal BB10 background. So further hoops have to be jumped through to set the text color, which I needed help figuring out. I asked the question on July 4th and received an answer on July 18th. Again, waiting 14 days to get an answer makes forward progress seem slow. (that said, I'm very glad that RIM employees do eventually answer since that is an enormous help!)

The other downside to using a text field is that there is a bug in the SDK whereby when the user touches it to scroll, it opens the keyboard, interfering with the scrolling and requiring the user to then close they keyboard. (Update: This has been fixed in the latest SDK)

If I understand correctly, a multi-line label control is coming for BB10, but it isn't done yet. The joys of working with pre-release SDKs.

No standard icons

In various screenshots it is obvious that RIM will make use of many standard icons for action items -- the toolbar-like UI at the bottom of some screens. But none of these icons have been made available to developers, so I have spent time making my own icons for actions such as "Delete". Even though final icons might not be settled upon, it would be nice if RIM made the current icons available to developers. Another growing pain of using a pre-release SDK.

qde.exe freezing

We had a power outage, and once I got my computer back up and running, the BB10 IDE wouldn't start. When I double clicked the icon for the IDE, I could see qde.exe running in Task Manager, but nothing would be displayed.

I got it working by removing the .metadata directory under my workspace directory. The downside to that fix is that it means you need to reconfigure the IDE and re-add all of your projects.

Update July 26: We had a thunderstorm last night and lost power briefly. qde.exe is hanging again and so I have to re-configure and re-add all of my projects again. Frustrating. I've created a ticket to make sure RIM knows about this.

Dev Alpha updated firmware issues

It took a few hours of head banging to get the updated firmware installed on my Dev Alpha. It appeared to install ok, but when the device rebooted to load the new firmware for the first time, the startup screen would play forever.

Eventually I was successful in doing a "Repair" operation that reloaded the OS, and that got me up and running again.

Any time something like this happens where a lot of time is wasted, I get grumpy.

ldd:FATAL: Could not load library libbb.so.0

Upon trying to deploy and launch my Baby Names app on the device with updated firmware, I get:

ldd:FATAL: Could not load library libbb.so.0

Sigh. I have to figure this out.

More Dev Alpha issues and simulator issues

After running my Baby Names app on the device with updated firmware and getting the ldd:FATAL error, the screen went black at some point, and I had to reboot the device.

Now I'm back to square one: The startup screen plays forever.

Not only that, the screen went black on the simulator requiring a simulator reboot, and now when the simulator loads, after briefly displaying the background image of the main screen, the screen goes black.

So I'm stuck, again. Sigh.

July 26 update: After deleting the simulator and re-installing it, it appears to be working again. Likewise, after reloading the OS on the Dev Alpha, it appears to be working properly. So that is a big sigh of relief.

Summary

Hopefully this is a low point and things will settle down and improve soon, but when as a developer I'm using tools that keep throwing curve balls and wasting hours of my time, it's not fun.


ldd:FATAL: Could not load library libbb.so.0
July 25, 2012

I've finally got the new firmware installed on my dev alpha, and the new SDK installed on my machine.

Upon trying to deploy and launch my Baby Names app on the device I get:

ldd:FATAL: Could not load library libbb.so.0


RIM July 2012
July 23, 2012

It's been somewhat shocking for me to watch RIM's stock price drop over the last couple of years. Today I see the price is $6.86. Wow.

Obviously no one knows the future, how well BB10 does, etc. Given the stock price, it would seem that many people think BB10 is a long shot.

Here are my optimistic thoughts about RIM -- the things that give me hope:

Being a developer, there are many aspects of BB10 that really impress me. See here

RIM has been around for quite a while, and looking at their history they seem to have a lot of good things in their DNA. While past success doesn't ensure future success, I think it can be predictive.

Being from Waterloo and having attended the University of Waterloo, I have a lot of respect for the talented people that live in this region. I think that has been an important ingredient to RIM's success over the years, and continues to be a big asset for RIM as it charts its course through troubled waters.

I've used QNX on the PlayBook for the last year, and it seems like a fantastic foundation to build on. Thorsten likes to make that point: That RIM is putting the things in place that will allow it to grow for another decade. I agree, I think RIM has put some very important things in place that put it in a position to do great things over the course of the next 5 to 10 years.

Will it happen?  Will BB10 flourish?  I of course don't know, but for now I'm cautiously optimistic.

older >>