Tuesday, August 29, 2006

GUI toolkit for Java ME/ CDC devices

During 2007 there will come more devices supporting Java ME/CDC1.1
My question is, what will new devices support, eSWT or/and AGUI?
(IBM:s j9 will of course support eSWT, but AGUI?)

Sun and Netbeans will only support AGUI because eSWT is not a JCP standard or?
But if there will not be so many devices supporting AGUI (today only SavaJe phones support AGUI).
Nokia have talked about it for a long time that they will support next generation Java platform with eSWT
Remember Nokia is the biggest Mobile phone company!!
I also wondering what SonyEricsson and Motorola will support in the future , eSWT or AGUI?
I know SavaJe support AGUI (I bought a phone at last JavaOne).

I think we will have devices during 2007 supporting Java ME/CDC1.1/Personal Basis Profile 1.1 profile with eSWT and other devices supporting Java ME/CDC1.1/Personal Profile 1.1 with AGUI (like the SavaJe phone).But of course I would like companies (with eSWT support) like Nokia to support also Java ME/CDC1.1/Personal Profile 1.1 with AGUI.

I am a little worried about if there will be a success for Java ME/CDC1.1 platform.
So far with Java ME/CDC1.0 there have not been so many devices to buy on the market.
I hope this will change with Java ME/CDC1.1!

JSR-249 does not include any GUI functions other than what’s in MIDP. I think that if it doesn't include a GUI (that is suitable for the hi-end device the JSR is targeted for) the whole JSR will miss its purpose. Personal Profile or at least Personal Basis Profile should be the obvious choice.
What do you think?

Friday, August 25, 2006

ERCP - Embedded Rich Client Platform, soon with the first release of eRCP

I read in the mailing list for the ERCP project, they is close to the very first release of the eRCP, release 1.0 it is planned to be released 9/6-2006.

It is very interesting; the intent of ERCP project is to extend the Eclipse Rich Client Platform (RCP) to embedded devices. eRCP is largely a set of components which are subsets of RCP components. It basically enables the same application model used on desktop machines to be used on devices.

Why do I think it interesting?

eRCP have some interesting components:
Core Runtime - the Eclipse Core which provides OSGI and Extension Point Framework support.
eSWT - The embedded Standard Widget Toolkit which is a subset of desktop SWT API.
SWT Mobile Extensions - a set of widgets and dialogs which are mobile device specific
eUpdate - a simplified API and interface for dynamically updating device software

I like Java standards, but what is this, is it Java standards?
No, not all of the componets!
OSGI is not new to Java ME or to the JCP, because we already have JSR 232 [Mobile Operational Management].

eSWT is not a standard, but Nokia have talked about for a long time that they will support next generation Java platform with eSWT. Nokia think the performance will increase for GUI mobile application. I have also read in newsgroups some developers think it is easier to develop good GUI application using C++ instead of Java for the symbian platform, I don’t know if is correct but with eSWT it will change.

I think we will have to new GUI toolkit eSWT and AGUI, we (developers) need to support them both.

But I am positive because I would like to have success for Java ME/CDC platform at least! I don’t think Java ME/CDC1.0/PP1.0 have been a success so far, not so many good devices have we seen.

I think we have devices during 2007 supporting Java ME/CDC1.1/Personal Basis Profile 1.1 profile with eSWT and other devices supporting Java ME/CDC1.1/Personal Profile 1.1 with AGUI (like the SavaJe phone).
But of course I would like companies (with eSWT support) like Nokia to support also Java ME/CDC1.1/Personal Profile 1.1 with AGUI.

Friday, August 18, 2006

Start developing eSWT applications for mobile phones

There are some different UI toolkits for the J2ME/CDC platform. Except Java ME/CDC’s old UI toolkit AWT, we also have AGUI (JSR-209) which is a subset of Swing for CDC. Both are standardized through the jcp process.

But Nokia talk about eSWT instead of AGUI, but eSWT is not a JCP standard.
I have playing around with eSWT for a while.
There is a good document about developing embedded apps with eSWT

1) I started with download a trial of IBM Workplace Client Technology Micro Edition 5.7
It packages the following portfolio of products:
- WebSphere Everyplace Micro Environment
- WebSphere Studio Device Developer
- WebSphere Everyplace Custom Environment
- IBM Service Management Framework

At the download page I downloaded the follow three files:
Workplace Client Technology, Micro Edition for Windows (containing all component products and tools)
- Read me (WCTMEReadme.html (50KB))
- Installation Guide (WCTMEInstall.html (20KB) )
- Workplace Client Technology, Micro Edition 5.7.1 for Windows (windows_cd.zip (611MB))

2) After downloaded all files I started the installation and choose to install “IBM WebSphere Studio Device Developer 5.7.1”.

3) Then I also need to install “eSWT (BETA) for Extension Services”
Start WSDD and in the menu select select .
Select update site: IBM Micro Environment Toolkit for WebSphere Studio
I installed this:
- SMF Bundle Development Kit
- Extension Services
- eSWT (BETA) for Extension Services
- JSR 169 (BETA) for Extension Services (add JDBC support)

4) A example application and howto configure WSDD I found in this document How to Develop eSWT Apps on WSDD 5.7.1, you also need to download the file: eSWT-WSDD-M3.zip for that document.

Today there no phone supporting eSWT, perhaps in the beginning of 2007 we will se the first phone (but I don’t know; only Nokia know).

I wondering what SonyEricsson and Motorola will support in the future , eSWT or AGUI?
I know SavaJe support AGUI (I bought a phone at last JavaOne).

For us developer it look like we have to learn both eSWT and AGUI!

update:
New article Explore Eclipse's embedded Rich Client Platform

Thursday, August 17, 2006

We need to do projects better!

I read James Gosling’s interesting blog about boiling oceans.

James says:
“my favorite principles of engineering that is all-too-often forgotten:
A journey of a thousand miles begins with a single step.
At Sun we use the term "boiling oceans" to refer to trying to do something impossibly hard all at once”

“Engineering projects too often fall into the trap of over-generalizing, trying to solve problems that folks might conceivably have, building things so large and elaborate on day 1 that they never get off the ground. It is always better to start with a first step. Then a second. And on...”

I really agree about this!
I think it is really funny how often this happen, new project start up and have to big scope. It is like people/companies newer learn the lesson and we end up with crashed projects and a lot of money spend.

I think every company need some easy rules, like:
1) Newer have a project that is longer than 6 month
2) Shit in --> shit out (we starting often develop to early), have look on this picture, I like it!
3) Some people/comany think: If we using RUP or Agile, then it is impossible to make mistakes.
4) But it is people’s competence/experience in a project that makes the success”.
I don’t think everyone in a project have to be an expert, we need beginners also but not only beginners.

Wednesday, August 16, 2006

Sun is open-sourcing Java ME, but what will be the benefit?

In the keynote at last JavaOne, Sun CEO Jonathan Schwartz and Senior Vice President Rich Green.Schwartz told us “the question is not whether Sun will open-source Java at this time, but how it will do it”.

I thought at that time it will take years before Java will be Open Source, but it was wrong!

Now I read things like Sun is open-sourcing Java ME, More info available here.

Open Source Java they have spoke about for years now.
But what will be the benefit? I don’t now?

>Sun Microsystems plans to open source its implementation of the Java ME specification
What will the benefit for me as a developer?
Perhaps it means better Java support on more devices like the Palm and PocketPC platform?

What do you think will be the benefit with open-sourcing Java ME?

Friday, August 11, 2006

JSR-232 and MSA Advanced (JSR-249)

JSR-232 (Mobile Operational Management) has now reach status proposed final draft.
"The specification is about creating a predictable management environment for mobile devices capable of installing, executing, profiling, updating, and removing Java and associated native components in the J2ME Connected Device Configuration."

If you read the interesting interview with MSA spec lead Asko Komsi, who is also Nokia's Director of Industry Relations, he talks about the future of mobile Java, you understand how important JSR-232 is for JSR-249 [Mobile Service Architecture Advanced].

In that interview you could read:
1) JSR 248 does not provide all the features enterprises need, mainly because JSR 248 defines a very static environment
2) JSR 249 is about a dynamic environment. With JSR 249, you can dynamically download new APIs to the handset. What APIs are available on the handset is no longer tied to that handset or even to what the MSA initiative can provide you with JSR 248. I think that [dynamic environment] is really what enterprises, and even consumer applications, will need in the future
3) From Nokia's perspective, we think that OSGI already offers us a lot of what we need, and it would provide an excellent framework for the dynamic environment we envision in JSR 249.
4) OSGI is not new to Java ME or to the JCP, because we already have JSR 232 [Mobile Operational Management], with Nokia and Motorola as the spec leads. From MSA's perspective, if we wanted to use OSGI, all we'd have to do would be to deploy JSR 232.
5) We anticipate that JSR 249 will exist in a draft version by the end of this year.

Tuesday, August 08, 2006

The Future of Mobile Java

I read an interesting interview with MSA spec lead Asko Komsi, who is also Nokia's Director of Industry Relations. In this interview Asko talks about the future of mobile Java, and how the MSA standard will help make it easier to develop for mobile handsets.

Wednesday, June 21, 2006

My DELL laptop PC works better now

I think a common problem for developers/consultants (and others working a lot with computers) we have to install a lot of programs (beta, alfa releases) and after a while (a short time) the performance on the laptop PC is not so good anymore.

I talked with DELL support and they told me when disk free space is lower than 50 %, performance sink 30 %!!!

Reinstall the PC is the best way to get back the performance on the PC, but it is painful, doing backups ….

But now I have bought me an extra disk and replaced it with the DVD player in my laptop. I then moved all data to this extra disk and reinstall Windows XP.
I have now all data on this extra disk (D:), on the first disk (C:) I have only windows XP and programs.
I have also moved the outlook data file to the extra disk (D:), I found out how to Move your Outlook data file to another location

It is now easy to reinstall the computer!!
Great!!
I am now also able to buy me an extra disk and easy install MacOS (or linux) on the PC and have access to the data disk, cool!!

Thursday, June 15, 2006

At least Sweden got a goal!



Sweden- Paraguay 1-0 in the World Cup in Soccer, Sweden was forced to win this match, Fredrik Ljungberg was the hero!!!

Wednesday, June 14, 2006

Guide to Java ME CDC

I found this: Guide to Java ME CDC, looks ok!

My experience with the SavaJe phone I bought at JavaOne 2006

I bought the phone at JavaOne. I thought it would be nice to have a cell phone that supports Java ME CDC and JSR-209 and of course because it was the first Java phone.

I was surprised I was able to make phone call at JavaOne (what could you expect with a developer edition).

The performance is not so good, I sync my addresses from outlook (560 addresses) and it takes a while when you try to open Phonebook in the phone now.

I haven’t stopped using my Nokia phone yet (Nokia 3230), I wait till the SavaJe phone is more stable. For me as a developer it is an ok phone, I have waiting years for JavaME/CDC phones.

I think the challenge for SavaJe now is to have good support for this phone and support the developer with new builds of the SavaJe platform.

Well I have started to develop a application using JSR-209 and works well in the developer environment (NetBeans Mobility Pack for CDC) but not so good in SavaJe phone….yet

Look also here in John O'Conner's blog posting about what people are saying about the SavaJe cell phone.

Friday, June 02, 2006

Upgrade my fedora 4 server and postfix (my mail server) didn’t work anymore

I found this information about How do I keep Fedora systems updated , I thought so easy to upgrade my server. I have to that now (20.30 pm) !!!
To start a full system update from the command-line, enter the following at the prompt:
su -c 'yum update'

Every thing looks ok, but my mail server (postfix) didn’t start!!
Shit ! Shit! Why did I upgrade my server now I thought, I have not time with this now!?
How important is it to have a mail server?
I should say VERY IMPORTANT!

I spend some hours try to figure out what was wrong and got some help from my friend Hansi, he I found this error in the log file:
Postfix: /etc/aliases.db: Permission denied

Now with help from Google I was able to solve it, I found this information about this problem after latest "yum update", postfix doesn't start
As root, from the command-line, enter the following at the prompt:
fixfiles restore
This will take a while. Then restart service postfix or reboot the machine.

Now it works!
What did we do before Google?
Hansi, thanks very much for your help!!

Wednesday, May 31, 2006

Next Generation UMPC (Origami devices) is called 'Vistagami' tablets

Funny, I haven’t even been able to try an UMPC (Origami) device yet and now Microsoft talk about Next Generation called Vistagami.

Interesting things about Vistagami:
- Hopefully, Lower prices, $500 is the price goal
- Vistagami devices will run Windows Vista, rather than XP
- As for Vistagami, Microsoft is still aiming to have devices ready by the time Vista ships early next year (January 2007).

I hope they are also able to fix the lack of all-day battery life, it is critical I believe!

Monday, May 22, 2006

what I would have to next JavaOne

a UMPC, they look very nice, check this or perhaps a Nokia 770 (you have to buy a bluetooth keyboard) or something else…

I am tired of bring my laptop pc to JavaOne, to heavy and the battery time is only 3 h.
I need something else so please Nokia (or any other company) fix it to next JavaOne, a handheld device with a keyboard like the UMPC!

My Windows XP installation crash 05.00 pm the day before departure to JavaOne, I had to reinstall my laptop pc, I finish the installation 11.30 pm and 03.30 I went up to go to JavaOne

Continue report from the NetBeans Software and JavaOne2006 conference in San Francisco

I join the NetBeans Software Day at the 2006 JavaOne Conference and JavaOne conference.

Some more interesting things from those events:

- The JavaOne conference of course had lot of session about Java EE 5.0 that was finishing some days before the conference. It is funny it was not a big happing during JavaOne that they released this huge improved version of Java EE. I think it was because developers have waiting so long for this release and most of us know a lot about this release already. Anyway I went for some EJB 3 sessions and I must say it look really nice, include in EJB 3.0 is also a new Java Persistence API (JPA). There was not so much talk about Hibernate, look to me EJB 3.0 have been accepted as a good alternative instead of using Hibernate.
- Java ME/CDC1.1 is now really hot, must of us developer working in the Java Mobility area has waiting for that a long time. At JavaOne it was showed clearly with:
1) This the first release of a SavaJe based phone called Jasper S20, the first commercial handset to run all applications in Java technology
2) Netbeans support Java ME/CDC with this new NetBeans Mobility Pack 5.5 for CDC Preview
3) Sun released the Sun Java Wireless toolkit is for CLDC
4) Company like Nokia and Motorala will soon release more devices supporting the Java ME/CDC platform. I believe there will come many Java ME/CDC devices during 2007.
- Interesting is also there will soon come some new GUI toolkit, that will replace AWT for the Java ME/CDC platform: AGUI toolkit (JSR-209) and eswt (Nokia and IBM promote it a lot). Nokia talk about eSWT for Next Generation Java in Nokia platforms, but eSWT is not a JCP standard.
- Sun promoted the Netbeans platform very hard during JavaOne, in keynotes and in technical session and in the JavaOne Pavilion. Sun strategy is to move all there products into the Netbeans platform and I think they will have success with this.
- I became interested in the Open Source database Apache Derby after I went to a technical session about Derby. I realize Derby also supports the Java ME/CDC platform and for me it is really interesting. Later I got information from a developer that have using Derby with J9 on a Pocket PC 2003, he told me:
“I have really given up on Derby as the memory footprint is just too big. You need to 8-16 Mb to really operate properly. Derby will not load a 20,000 row table with one index in 8 meg including your app, that's just doing the inserts, never mind starting to do queries!.
However, I have just the other day discovered db4o... wow this is something else! the best bit of software I have seen since google earth.
It's not an SQL database it's an Object database. Rather than me harping on about it here, take a look for yourself, it's simply amazing.
I now have my application working great, it's faster, easier and handles even bigger tables... and currently all in under 3 meg. It does take a bit of getting used to, as they is no joins. But once you do, there is no going back!
- They talked about Project Tango, SUN engineers have working with Microsoft (WCF) engineers to ensure interoperability of enterprise features in Webservices. They have now Open Source the work they have done in Tango and they called it WSIT.
- I went to a technical session about Mobile Operational Management (JSR-232), just to JavaOne they released a Public Review about it. I think this JSR will be very important for us developer in the future.
- I also went to technical session about Java Card Next generation, it was really interesting, they plan to have a webserver on the JavaCard and support access to the JavaCard with normal IP, to simplify it for developer. Really cool but this JSR will come out during 2007 and products 2008, with normal delays….2009
- AJAX was hot during JavaOne, but not for me!!I think it is time for SWING applications, with Matisse it has really get easier to develop GUI application both for Java SE and Java ME/CDC1.1 platforms.
- It look like companies supporting Open Source have easier to get attention in the JavaOne pavilion, lots of people visit sun and Jboss’s booths, but not so many people in BEA, Borland booths. Of course these company will say they support Open Source, but the main different is that they sell there products.

to be continued …..

Saturday, May 20, 2006

Report from the NetBeans Software and JavaOne2006 conference in San Francisco

I join the NetBeans Software Day at the 2006 JavaOne Conference and JavaOne conference.
Some interesting things from those events:
- I got one SavaJe phone!!, now I can start using Java ME/CDC1.1 and the new AGUI toolkit (JSR-209).
- There is also a new releases of Netbeans that support the SavaJe phone called NetBeans Mobility Pack 5.5 for CDC Preview.
- Sun announced that Jboss now have also join Netbeans
- Netbeans 5.5 beta with support for Java EE 5.0 is released.
- Netbeans subversion beta is released, it look very nice in the demo.
- There was a demo of the Jackpot module, the module adds the capability to reengineer Java source code. You are also able to add new rules easy and share with others.
- Sun promote everyone to join JCP, I thought I should join JCP, but you couldn’t do that in the JavaOne pavilion, you have to download a pdf-file and sign it and then send it as a fax. Perhaps time to fix an easier solution and using Java for that?
- There was a demo of the NetBeans Enterprise Pack, you are then able to write SOA applications using XML, BPEL, and Java web services.
- Sun also continue to open source more things like: Sun Java Studio Creator, Sun Java System Portal Server, the Business Process Execution Language (BPEL) Engine and the NetBeans Enterprise Pack, as well as Sun's Java Message System (JMS)-based message queue and Web Services Interoperability Technology (WSIT). Everything moves into the Netbeans platform, I think it is a good strategy and the Netbeans platform getting stronger!!
- MSA for CLDC (JSR-248) became in Proposed Final Draft during JavaOne, they planned to have it final in august, we will see devices with support for that during 2006Q4/2007Q1. One change was support to run on top of Java ME/CDC1.1, the reason for that was to make it easier to migrate to MSA for CDC JSR-249 when it is ready. JSR-249 first public release plans to be released 2006Q4. MSA plans in the future to be upgrade every 18 months. One other change in JSR-248 was that there will be a will two versions of the MSA, one with a subset and one with whole MSA , read more about it here at C. Enrique Ortiz' Mobility Weblog.
- The new AGUI toolkit (JSR-209) planned to be final in august.
- Sun also released a Sun Java Toolkit for CDC, Early Access, it is like what Sun Java Wireless toolkit is for CLDC, the toolkit includes the emulation environments, documentation.
- In Nokia booth they demo next release of Carbide.j, version 1.5 that will support remote debugging on the phones. It look nice and it is very good to have.

to be continued …..

Monday, May 15, 2006

Time for JavaOne!!!

I arrived on Friday to San Francisco, great to be here again, it is my 6th JavaOne.
Yesterday I went on tour “Muir Woods and Wine Country Tour”. It was a great tour with a lot of goods wines and I also liked the Muir woods with the world’s tallest trees.

But now it soon time for JavaOne, but first I will join the NetBeans Software Day at the 2006 JavaOne Conference, it is tomorrow.

See You at JavaOne and Netbeans day!!!

*****************sorry in swedish this part***************************
JavaOne, Får mig osökt att tänka på Orup... ” Nej du tar inte min Mercedes”

Nej du tar inte min JavaOne
JavaOne är min bäste vän
Du tar inte min JavaOne
Nej då kan du hälsa hem

Jag sa skjut min hund, prygla min katt, gör av med mina pengar på en lördagsnatt
Ta min fru, gör det du, men du om nån borde veta att: vill du göra mig riktigt illa
Så ta min JavaOne

Vill du åsamka mig smärta och förtvivlan utan gräns Vill du se hur mina tårar trillar, så ta min JavaOne

Wednesday, May 10, 2006

Free database for Java ME/CDC1.1 platform?

Now when it look like there will lots of devices for the for Java ME/CDC1.1 platform in the future.

What about a free database that you could bundle with your Java ME/CDC application?
Is there anyone with support for the following platforms: Symbian 9, Microsoft Windows Mobile 5.0 (for Pocket PC) and SavaJe?

How do you bundle the application (Java App and database)?
Will it be support for that in tools like NetBeans Mobility Pack for CDC?

Monday, May 08, 2006

We need JSR-249, JSR-232 and JSR-246 now!!

I think it is now time for success for the Java ME/CDC1.1/Personal Profile platform1.1!!!

But we need tools and devices for the Java ME/CDC1.1/Personal Profile platform1.1 to get this success.
So far Java ME/CDC1.0/Personal Profile 1.0 had no success in this area!
You can read things like Sun - Get you finger out! We NEED a Java Handheld / VM and Open letter to SUN to produce a JRE for Pocket PC

But a month ago the NetBeans Mobility Pack for CDC appeared!!
Netbeans was already is my favorite tool for the Java ME/MIDP 2.0 platform and now they also support Java ME/PP1.1 platform. I think now Netbeans is the best Java tool for mobility developing and it is also free!!

During 2007 I hope company like SonyErcisson, HP, Nokia, Palm, DELL will start produce more devices, with support for Java ME/CDC1.1/Personal profile 1.1 platform.

But support for Java ME/CDC1.1/PP1.1 is not enough for to get this success for the Java ME/Personal Profile platform. I think devices also need to support JSR-249 (Mobile Service Architecture Advanced) , JSR-232 (Mobile Operational Management) and JSR-246 (Device Management API).

JSR-249 provides guidelines to integrate J2ME JSRs in a uniform and predictable arrangement that is customized specifically for the advanced mobile handset. It will issue clarifications on certain components if necessary and will aim at reducing the number of available options.

It should also be possible to managed devices remotely with a modular architecture that enables extensibility after manufacturing. Push out new Java application, databases, OS updates and Java updates. In case of lost of device, lock the device remotely. It should also be possible to administration of users remotely.
All major mobile phone manufacturers worked together in order to define a 'Mobile Operational Management' concept (JSR-232). The OSGi Service Platform and the OMA DM (JSR-246) specifications provide the basis for building this standard for end-to-end management of CDC-enabled mobile handsets.

But JSR-249, JSR-232 and JSR-246 are not final yet, I hope they can speed up the process to get all these important JSR in a final stage. This is really important!!
I hope to hear news about that during JavaOne 2006 and it is now close to the 2006 JavaOne Conference!!! :-)

Wednesday, May 03, 2006

Add a Site Feed URL to my blog

Add this button to my blog:
Atom formatted XML

This is an Atom formatted XML site feed.
It is intended to be viewed in a Newsreader or syndicated to another site.