Latest Publications

LBP2 Bug: The Whole World in my Pod!

Taking the term "Little Big Planet" too literally

Having a lot of fun so far with Little Big Planet 2, and I can’t wait to get into create mode. However, while starting up the game a second time I noticed the “world” was stuck right in the middle of my pod!!! You can move around a bit and go to the right of the screen to see your character, but you can’t select any games or do much.

I quickly found out I’m not the only one seeing this problem (btw that screenshot is from another player, not mine, although that’s exactly what my screen looked like!).

So this is my workaround for this bug (first try workaround in UPDATE2 and UPDATE3 at bottom of this message, which is simpler …):

  1. Exit the game
  2. Go to XMB->Network Settings->Internet Connection->Disable
  3. Start LBP2 again, skip intro screen
  4. Now that you’re in offline mode, your pod should be reset
  5. Open your popit (press [square])
  6. Select “Pod Decoration”
  7. Functions->Save Pod
  8. Quit game
  9. Repeat step 2 and re-enable your internet connection
  10. Start LBP2 and enjoy

I’m sure there’ll be a patch soon for this. I’m not sure what caused it, but by reading some of the comments around, it might be related to playing online with others which is what I was doing before I got this error.

UPDATE: Good news! The folks at Media Molecule are aware of the problem and are working on a fix, from their lbp twitter page:

If you’re seeing a bug with your LBP2 Pod and giant craft earth, we’re looking in to it. In the meantime, try this fix:http://bit.ly/gyYBBM

Link for the fix is to this post.

UPDATE2: If you find a different (and easier) workaround for the bug, please note it in the comments section and I will include it here.

Here are some of the ones I’ve gotten and/or seen on other forums (note: I haven’t tried any of them, I’ve only tried the one I describe in my original blog post):

  • Stay in game and logout from PSN and log back in (from EU playstation forums)
  • While in your pod, access your XMB by hitting the PS button.  Highlight the Account Management option and hit Triangle.  Select “Sign off”.  You can then go back to the game by hitting the PS button again.  The game will tell you that you have been signed off and will probably ask if you would like to sign back in.  Do so, and it should be back to normal. (thanks to user Arliman)

  • Join or try to join a game with a friend
  • Turning off your PS3 and then turning it back on

UPDATE3: No patch yet, but easiest and quickest fix has been confirmed by the official LBP twitter page;

LittleBigPlanet

@LittleBigPlanet LittleBigPlanet

@MeatRations Head to the XMB, sign out of PSN and go back – should fix it. We’re aware of the issue :)

James Gosling explains why he quit Oracle

james_gosling

A photo I took with James Gosling, during happier times (for Sun)

Uh oh … “Why I Quit Oracle”

eWEEK got quite the scoop interviewing Java creator James Gosling, where he finally spills the beans on why he quit Oracle earlier this year.

If you are a tech geek, or more likely a Java geek, you probably know who Gosling is. I first saw him presenting at my first JavaOne, and in JavaOne 2006 was fortunate enough to talk to him about how we were using Java for one of our projects and take a picture with him.

It’s hard to image a JavaOne without Gosling’s on stage and infectious enthusiasm. His tradition of catapulting T-shirts into the audience will be missed (maybe somebody at Oracle will give it a try? Let me know).

In the interview he mentions several things that contributed to his discontent; his salary, a modified job title, and perhaps more importantly a feeling that he had lost quite a bit of control and influence over the important decisions dealing with Java.

Gosling is a bit uncharacteristically harsh when he describers his previous boss,”He’s [Ellison] the kind of person that just gives me the creeps,”.

Ouch.

I have mixed feeling about this article. At first glance, and considering the timing (week of Oracle’s first JavaOne), it sounds like sour grapes. That was my first reaction. To be fair to Oracle, I don’t think it’s horribly unreasonable that if they acquired a company that wasn’t able to sutain itself, a lot of things were going to change, and they all include a lot of what James mentions (who makes decisions, job titles, how you are compensated).

A good example is this:

However, at Sun, any executive that was a vice president or above was given what amounted to a bump or bonus based on the performance of the company. “In a mediocre year you did OK, but in a good year you did great” in terms of this compensation, he said.

Perhaps this was part of the problem? Maybe Sun executives shouldn’t have been getting bonuses at all in a “mediocre year”. I’m not sure Oracle is being entirely unreasonable here.

On the other hand, based on Gosling’s description, it sounds like things could have been handled much better. He mentions that he felt he and his peers felt that their ability to decide anything was gone, and it’s completely understandable that this would be extremely frustrating. Specially when he’s the creator of the language, and is a well known and respected “tech celebrity” (do people in the real world know there’s such a thing?).

At the end of the day, Gosling has every right to complain, just like Oracle has every right to make internal decisions about how to run their business.

I hope James Gosling can still find ways to contribute to the project he gave birth to, just like people like Gafter and Bloch continue to be involved even though they work at different companies now (I mean Gafter is at Microsoft of all places!!!).

You can follow what James Gosling is up to at his blog.

Goodbye JavaFX Script, hello JavaFX 2.0

Goodbye JavaFX Script, we hardly knew ye

JavaFX Script is officially dead.

Oracle has decided to continue investing in JavaFX as the UI platform for Java client applications, but at the same time they’ve realized that the JavaFX Script language was probably a limiting factor in the general adoption of their RIA technology.

History

On November 8, 2006, Sun engineer Chris Oliver published an entry in his blog introducing a project he had been working on called “F3″. His blog entry explained the general concepts behind the project;

My name is Chris Oliver. I came to Sun through their acquisition of Seebeyond in September 2005. I’d like to present something about my current work – it’s not public yet but it should be open-sourced on java.net shortly.

My project is called F3 which stands for “Form follows function”, and its purpose was to explore making GUI programming easier in general.

F3 is actually a declarative Java scripting language with static typing for good IDE support and compile-time error reporting (unlike JavaScript…), type-inference, declarative syntax, and automatic data-binding with full support for 2d graphics and standard Swing components as well as declarative animation. You can also import java classes, create new Java objects, call their methods, and implement Java interfaces.

Chris’ first blog post on F3 introduced code snippets showing off the main features of the language, and a follow up post had a set of very impressive demos meant to show off the language and how it could compete with other RIA technologies like Flash.

At JavaOne 2007 F3 was rebranded as JavaFX Script, and we were shown some cool demos, like this JavaFX PDF Reader which unfortunately was never released.

JavaFX 1.0 was released on December, 2008.

At JavaOne 2009, Sun showed off a much needed JavaFX designer tool. The demo showed how the tool would allow for visual design of JavaFX applications on different “screens” (desktop, mobile, TV, etc.). This tool hasn’t been released to the public, instead there’s a more developer oriented Netbeans plugin with Matisse like UI design capabilities that was released a while ago.

But it’s not Java

The complaint I would often hear from developers when talking about JavaFX is that it was not Java. Unlike Java, F3 was designed from the beginning with UIs in mind. Chris Oliver wanted the flexibility of a declarative language, and decided that XML was not the best fit for this, thus the need for the F3 language.

The problem was that the new language was very different from Java. I remember doing a JavaFX Script presentation for a JUG in Panama, and even after having written a few programs in it, the context switch between it and Java was quite big for me.

At the last JavaOne I attended, I could overhear a lot of people rejecting the idea of learning yet another new language just to do a Java based UI. Not only a new language, but one that was so different from what they were used to. People often forget that one of the reasons Java dominates the development landscape today is because it was so similar to it’s predecessors; C and C++. While the benefits of a new UI focused language are many (the binding features alone in JavaFX Script are a good example), one thing that I’ve noticed is that modern UIs are being done in less exotic ways; just take a look at the UI framework in Android which is Java language based and on iPhone which uses Objective C.

JavaFX technology in Java, and other languages

Oracle has published the proposed roadmap for JavaFX 2.0. The key standout feature listed there is “Port JavaFX Script APIs to Java”, which will make JavaFX not only easily available to Java developers but to those who use other dynamic languages like Scale, JRuby, Groovy, Javascript, etc. The roadmap also mentions support for lambda expressions (closures), which I can already see being very useful for UI programming.

There are other notable features listed there, like additional UI controls, web views and integration with HTML5, HD playback, etc. The roadmap mentions the binding API, I’m curious to see how it would be integrated in the core Java language.

I think Oracle has made the right move here, the JavaFX stack is already pretty advanced and shows a lot of promise. It should be used more, but was being hindered by the lack of adoption of JavaFX Script. Porting these APIs to Java, and supporting other dynamic languages should allow a lot more developers to leverage the power of JavaFX.

Sorry for the long post, but I wanted to include a bit of history at the beginning about F3. I wonder how Chris Oliver and the other engineers that worked so hard on the core JavaFX Script language feel about this development. Hopefully they feel pretty proud about their work, because even though the language is being dropped, it seems the core of JavaFX is pretty strong. Adoption should grow now that there is no “new language” excuse.

At least that’s what I’m hoping for.

Watching JavaOne 2010 from afar

javaone_from_afar

Well, unfortunately for me I couldn’t make it to JavaOne this year. However I am happy Oracle is keeping JavaOne alive, and that my prediction from last year proved to be true (Is this the last JavaOne ever? – answer: no).

If you are not in San Francisco this week or have JavaOne passes, you can still attend virtually. Here are a few resources to keep you in touch;

I’ve heard Oracle will keep Sun’s tradition of posting all the presentations at a later date, I will post the links as they become available.

I’ll also be trying to scan blogs for any interesting tidbits to be highlighted, so stay tuned.

Also, I didn’t make it this year but at least one of my silly drawings did. Thanks to Steve Chin for including my little Java/Duke Evolution picture into his “JavaFX Your Way: Building JavaFX Applications with Alternative Languages”.

“Terror Messages” (cute error messages that scare you based on context)

Delta website error message

So Delta has a cute “We’re Experiencing Some Turbulence” error message when they have an internal error on their website. I’ve seen this error many times before, I think the first time I chuckled a bit.

The other day I was enjoying the new Wi-Fi Delta offers in some of their flights. I checked my email, my facebook account, everything worked great. Then it occured to me to check my delta account. I was wondering if they credit your miles after take off or later when you land (yeah I was bored). Suddenly, I get the familiar error message; “We’re Experiencing Some Turbulence“. I go, “oh crap” what’s going on? For a couple of seconds I forgot I was getting an error message for a website, and thought I was reading a message about my flight, a problem serious enough that they bothered to notify me via the new Wi-Fi connection.

Now I did say it was a couple of seconds, of course I quickly realized this had nothing to do with my flight. But for a couple of seconds I did get a bit freaked out by the message, specially seeing it on my browser. It got me thinking; how did my brain go into alert mode that quick when I know better?

It was all about context.

The context in this situation is this; traveling on Delta flight, on the official Delta website, checking my account and current flight information and then getting a message mentioning a very specific phrase about air travel. Obviously, if I get this message at my home, the train or the airport there’s no problem. Everything changes once I’m on a situation that is directly related to the term used in the error message.

So it’s probably not a good idea to keep these cute error messages, when you think that there’s a new context for use of this site. Before it wasn’t possible to read this from a plane but now it is. It just highlights how sometimes when you consider usability, you have to think about all the possible scenarios that your users will be in while interacting your application.

BTW, I’d love to hear from other people on potential error messages that might be scary in other contexts.

New screenshots of the JavaFX Design Tool

jfx_design_tool_preview2

The screenshot above is from Anthony Rogers’ blog (UI designer for the tool), and the next one is from Chris Oliver’s blog, who successfully managed to hide away from most of the geek crowds at JavaOne.

jfx_design_tool_preview1

The design of the tool is looking really nice and clean, the timeline reminds me a bit of the Adobe Premiere CS4 one. But unlike Premiere or Flash CS4, one interesting design choice is the lack of row headers to identify the different elements or categories for the rows in the timeline. This makes it look a bit cleaner and less cluttered, but it would be interesting to see if this doesn’t make it more difficult to track just what it is you are supposed to be controlling in that part of the timeline. Hard to tell without trying the tool of course (hint, hint, Sun … available for alpha/beta testing!).

I haven’t seen a single bit of code in any of the screenshots/demos so far. I wouldn’t be surprised that there was some script text area somewhere, or maybe the expectation is that for code you go to a tool like Netbeans?

Tor Norbye also provides some additional information about the tool, it will be available as a webstart application that will let you save data in the “cloud” (like Google Docs) or locally, as well as run the tool online/offline.

Chris calls it the JavaFX Design tool, others the JavaFX Authoring tool, for sure neither of these is the final name for the product but I’m still a bit surprised it doesn’t seem to have any sort of funky codename at this point.

You can watch some short videos of the tool in action here.

 

WP SlimStat