The Source for Java Technology Collaboration
User: Password:



Qusay H. Mahmoud's Blog

Community: Mobile & Embedded Archives


Hybrid Apps with JavaFX

Posted by qmahmoud on May 06, 2008 at 11:41 AM | Permalink | Comments (0)

I have attended the General Session this morning. Several applications were demoed showing the power of JavaFX. The most interesting for me was "Connected Life", which interacts with several social networking tools, but what I found most interesting about it is the ability to drag the running application from inside the browser onto the desktop, the browser can then be closed and the application continues to run on the desktop. The 3D graphics look amazing, and the same application run on mobile devices (they even have it running on the Android emulator)...

Enabling developers to write hybrid applications is a great productivity strategy for JavaFX Technology. I cannot wait to see the full SDK for JavaFX sometime over the summer. Q.



Faculty Summit on Mobile Devices in CS Education

Posted by qmahmoud on April 23, 2008 at 01:56 PM | Permalink | Comments (0)

The Centre for Mobile Education Research (Univ. of Guelph) and Research In Motion Limited (RIM) are pleased to announce the first Faculty Summit on Mobile Devices in Computer Science (CS) Education.

This event is for faculty members interested in integrating mobile devices into their courses and across the CS curriculum. The summit will provide a unique opportunity for CS educators at the college and university levels to learn about the potentials of integrating mobile devices in CS education. Attendees will enjoy a day of talks, tutorials, and demos from faculty members, industry speakers and students.

This event will be held at the University of Guelph on Thursday, June 12. More information ia available here: http://cmer.cis.uoguelph.ca/facultysummit. Q.



Centre for Mobile Education Research

Posted by qmahmoud on February 27, 2008 at 01:54 PM | Permalink | Comments (0)

I haven't posted anything in my blog for the past six months not because I didn't have anything interesting happening in my life but rather I have been super busy with work! One of the things I am very excited about is the newly established Centre for Mobile Education Research (CMER) whose mission is to engage in leading edge applied research to develop state-of-the-art applications and services to facilitate and enhance mobile education and learning, and to provide leadership in integrating mobile devices into the Computer Science and Engineering curriculums. The Centre is funded in part by Research In Motion (RIM) and I am very grateful for their generous support. RIM is the maker of the awesome BlackBerry wireless device, which supports Java ME CLDC and MIDP by the way. You won't know how awesome and valuable the BlackBerry is until you get one. Q.

Cognitive Networks

Posted by qmahmoud on August 20, 2007 at 12:31 PM | Permalink | Comments (2)

I am delighted to announce the availability of my new edited book on "Cognitive Networks" that has just been published by Wiley.

With forewords by Joseph Mitola III and Sudhir Dixit.

From the back cover

Cognitive networks can dynamically adapt their operational parameters in response to user needs or changing environmental conditions. They can learn from these adaptations and exploit knowledge to make future decisions.

Cognitive networks are the future, and they are needed simply because they enable users to focus on things other than configuring and managing networks. Without cognitive networks, the pervasive computing vision calls for every consumer to be a network technician. The applications of cognitive networks enable the vision of pervasive computing, seamless mobility, ad-hoc networks, and dynamic spectrum allocation, among others.

In detail, the authors describe the main features of cognitive networks clearly indicating that cognitive network design can be applied to any type of network, being fixed or wireless. They explain why cognitive networks promise better protection against security attacks and network intruders and how such networks will benefit the service operator as well as the consumer.

Cognitive Networks (this book)


  • Explores the state-of-the-art in cognitive networks, compiling a roadmap to future research.
  • Covers the topic of cognitive radio including semantic aspects.
  • Presents hot topics such as biologically-inspired networking, autonomic networking, and adaptive networking.
  • Introduces the applications of machine learning and distributed reasoning to cognitive networks.
  • Addresses cross-layer design and optimization.
  • Discusses security and intrusion detection in cognitive networks.

Cognitive Networks is essential reading for advanced students, researchers, as well as practitioners interested in cognitive & wireless networks, pervasive computing, distributed learning, seamless mobility, and self-governed networks.

Contributors
Raouf Boutaba, R. Chandramouli, Luiz A. DaSilva, Herv Debar, Thomas G. Dietterich, Linda Doyle, Royta Egashira, Tim K. Forde, Daniel H. Friend, Keita Fujii, Allen Ginsberg, William D. Horne, Harikeshwar Kushwaha, Pat Langley, Kenji Leibnitz, Jun Lu, Allen B. MacKenzie, Chetan Mathur, Joseph Mitola III, Mehul Motani, Masayuki Murata, Yi Pan, Jeffrey D. Poston, John Strassner, Vineet Srivastava, K.P. Subbalakshmi, Tatsuya Suda, Ryan W. Thomas, Naoki Wakamiya, Jin Xiao, Yiping Xing, Ariffin Yahaya.

For more information about the book, and to read an excerpt please visit: http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0470061960.html or http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470061960.html.

I hope you'll find it useful. Q.



Driving innovations in the mobile apps space

Posted by qmahmoud on June 08, 2007 at 09:04 AM | Permalink | Comments (0)

While at JavaOne 2007, I attended a session on how Java ME developers can work with carriers -- with representatives from Spring, Orange, AT&T, and China Mobile. It is clear that service providers are under pressure to offer more compelling mobile applications to their customers. I believe that students will play a key role in driving innovations in the mobile apps space, and I am pleased to see that Vodafone Betavine is sponsoring a set of student competitions for innovative mobile applications, spanning the areas of social networking, entertainment, office, and future social planning. The first prize is £5000 (approx. US$9,950). The submission deadline is September 30, 2007. To learn more about the Vodafone Betavine Student Competitions, please see: http://www.vodafonebetavine.net/web/guest/projects/students.

Speaking of student competitions, back in April I ran the Greenfoot’ Greeps competition at the University of Guelph-Humber. The students find it exciting. The results of the competition are available here: http://www.cis.uoguelph.ca/~qmahmoud/greeps.

I am always looking for sponsors for similar events. Q.



Liberating Java

Posted by qmahmoud on May 17, 2007 at 11:53 AM | Permalink | Comments (1)

I attended the "Liberating Java" session at JavaOne by Simon Phipps, Chief Open Source Officer at Sun Microsystems. He spoke highly of the open source concept and how it was Sun's vision right from the start. Isn't Sun the first open source startup? Well, I believe Sun has embraced open standards from the beginning. In 1984 the Network File System (NFS) was made open and free to the industry, and later it became the industry standard for network file sharing.

He described the concept of open source to be about skilled engineers who join together to leverage each other skill, and it is about engaging with the code. It is really all about creating a win-win situation for everyone. An interesting quote he made: it is not communism, it is connected capitalism.

In the world of open source, individual consumers and businesses have a choice, and the analogy Simon used was like going to a buffet restaurant -- it is all about choice. People love open source not because they necessarily want to have access to the source code, but to have control over building their own software infrastructure.

Simon talked about a couple of case studies of open source in the developing world. He discussed the case of China where more than 70% of the government software is open source, and Brazil is embracing open source as "a matter of sovereignty" in the sense that Taxpayers money spent on licensed software is going abroad, when it should be used to support local developers.

A full interview with Simon about open source Java is available on Linux Journal website at: http://www.linuxjournal.com/article/9624

Finally, remember that back in 1995 when Java was released to the public, the source came with it. So Java has always been an "open" platform, but now it is FREE! Q.



Java Interactive TV

Posted by qmahmoud on May 10, 2007 at 12:19 PM | Permalink | Comments (0)

This morning I attended the Java TV Track kickoff session. There were representatives from Sun, CableLabs, Time Warner, and Sony. They talked about the OpenCable initiative, one of its drivers is to encourage set-top supplier diversity – similar to the PC industry.

OCAP is the Open Cable Application Platform, which is based on Java. An SDK is available for developers interested in developing interactive TV applications, you can download it from http://www.opencable.com/ocap. One of my favorite TV channels is the Toronto-based CityNews, which has a ticker running across the screen with news from various sources. It would be really cool if they make it possible for viewers to replace that ticker with their favorite RSS feed. :-)

During the session it was announced that TiVO will be offered by several cable companies on existing cables, so be on the look out for offers from your cable providers to upgrade your cable box. :-)

Next, they discussed BD-J or Blue-ray Disc Java is the platform for supporting advanced content for Blu-ray Disc. This technology allows much more sophisticated bonus features on Blu-ray Disc titles than that provided by standard DVD. A couple of demos of Blu-ray Disc were shown: Big Fish, and Open Season. If you are a content developer, you might be interested in the BD-J application contest. For more information on BD-J, please see http://java.sun.com/products/javatv. Q.



Mobile is global

Posted by qmahmoud on May 08, 2007 at 04:59 PM | Permalink | Comments (0)

This afternoon I attended the general session on Mobility and Devices by Laurie Tolson, Vice President of Client Software Group at Sun.

She started her presentation by discussing how Java is everywhere: desktops, enterprise servers, devices, Blu-ray, 3 billion smart cards, etc. She said this is a great time to be a Java developer. :-)

Jason Ling of MySpace, which is the largest social network in USA, talked about MySpace mobile -- using Java to enable users to take their social network with them in their pockets. Java is enabling MySpace go mobile, and mobile is global.

Martin Wrigley of Orange/France Telecom, which is the first European integrated carrier, discussed how the Mobile Service Architecture (MSA) is a fantastic opportunity as it opens up the doors to developers, and consequently consumers will have access to more applications. Orange has 100 million customers in 92 customers and wants to offer more Java mobile applications to their customers. The first MSA mobile device is the SonyEricsson z50i.

Laurie talked about the Mobilizing Java Video Contest. Visit http://java.sun.com/javame/contest/ to learn about the winners and view the videos submitted. Q.



The Java Open Source Platform

Posted by qmahmoud on May 08, 2007 at 11:10 AM | Permalink | Comments (0)

This morning I attended the keynote speech: Get in the Driver's Seat with Java Technology by Rich Green, Executive Vice President of Software, Sun Microsystems.

John Gage, Chief Scientist, (the master of ceremony if you like) opened the session by welcoming everyone to the event and talked about Java in devices, which are beginning to multiply. To move this forward, there is a need to reduce the cost by opening every component of Java technology. So the session was really about open source Java, devices, and the next wave of tools.

Rich Green talked about community as a fundamental human property, and how barriers to community are falling. He encouraged the audience (thousands of developers -- over 14,000 are attending JavaOne this year) to think of technology as a catalyst, and how to further the network as an unstoppable social force. He presented some interesting numbers:

  • Mobile devices out ship PCs 20 to 1
  • There are over 6 million Java developers
  • Out of the 5.5 billion devices available worldwide, 2 billion run Java
  • GlassFish powers more business transactions around the world than any other system
  • The number of developers using NetBeans increases by 92% every year

I am not surprised by the last figure regarding NetBeans. As I mentioned in an earlier entry, NetBeans has come a long way in terms of ease of use and more importantly performance. Also, the support for Java ME is phenomenal -- the majority of Java ME developers use NetBeans!

The first Java Specification Request, JSR-1, is about Real-Time Java. Rich invited the CIO of NASDAQ (Anna Ewing) to share her thoughts on real-time Java. Their trading technology runs on Java on course. NASDAQ pioneered electronic trading 36 years ago. She also presented some numbers about trading, which there are scary to even think about. :-) Nevertheless, the number of transactions they perform per second on any given day is about 150,378. Anna talked about the importance of speed in the trading market. They are able to handle the surge of volume successfully (e.g. the Feb 27 domino effect of the sell-off on the Chinese market). On Feb 27 they handled 5 billion shares!

Finally, today marks the official completion of open source Java that Sun announced back in November 2006. A complete open source development kit is available: OpenJDK. There is more to open source than the source itself of course, and for that reason Sun is establishing an Interim Governing Board for creating constitution, and making available the certification kit (TCK) to ensure compatibility across the open source community. The license they chose was GLPv2, which is the same license used by the GNU/Linux community. Jonathan Schwartz, CEO and President of Sun, said that they have been surprised at the impact of open source Java and the license they have chosen, and developers and governments worldwide like the road Sun is taking with this as it will open more opportunities without friction with licensing. Q.



Off to JavaOne 2007

Posted by qmahmoud on May 06, 2007 at 12:31 PM | Permalink | Comments (0)

I'll be flying from Toronto to San Francisco tomorrow morning to attend JavaOne 2007. I will be there between Monday afternoon and Thursday evening; the weather forecast calls for lots of sun and blue sky, which will make walking from hotels to the Moscone Center a pleasant exercise for everyone. :-)

There are a couple of new and exciting things happening this year:

I am particularly interested in the Java ME space, so I look forward to gaining new knowledge from the presenters of the many exciting technical and BOF Java ME sessions. And I look forward to seeing exciting stuff at the Mobility and Device Village (Pavilion) where exhibitors such as Nokia, Motorola, and Sprint will showcase the latest applications, devices, and services that run on Java ME. Speaking of devices, this year two devices were chosen for the JavaOne conference: the Motorola MOTOMING A1200 and the WowWee Robotics RS Media (Robosapien). Both devices will be available at a discounted rate for JavaOne attendees.

If you're interested in Java ME and want a little guidance in organizing your schedule to make the most out of the Java ME cool stuff, I recommend Terrence Barr's Java ME Guide to JavaOne 2007. In particular, you may want to print a copy of his Java ME Pocket Guide.

I will be giving a mini-talk on Tuesday at 12:00pm at the community Corner in the Pavilion (pod# 408) in which I will share my experience into integrating Java ME and BlackBerry wireless devices in computer programming courses. If you cannot attend but would like to learn more, please see http://www.uoguelph.ca/~qmahmoud/javame.

During the conference, my blog entries about Java ME will be posted at http://mobileandembedded.org -- the open source community for mobile and embedded devices powered by Java ME. Q.



Networking MIDlets and blocking operations

Posted by qmahmoud on April 18, 2007 at 12:41 PM | Permalink | Comments (1)

I get many email about the application featured in the article MIDP Database Programming with RMS. The application locks up the screen as the MIDlet tries to establish a wireless connection. This article was developed back in 2000 and back then everything worked perfectly. However, when developing networking MIDlets, pay special attention to blocking operations (e.g. methods that establish a connection to the network) which can lock up the screen, leaving the user frustrated with the application. To prevent this, all blocking operations should be performed in a separate thread. A more detailed explanation of this can be found in Preventing Screen Lockups of Blocking Operations in which I provide a detailed example of a network time MIDlet client.

To fix the problem in the Stock Quotes MIDlet from the MIDP Database Programming article, edit the QuotesMIDlet.java file, and:

  1. Create a new method as follows:
    public void makeConnection() {
       try {
          String userInput = input.getString();
          String pr = getQuote(userInput);
          db.addNewStock(pr);
          ticker.setString(tickerString());
       } catch(IOException e) {
       } catch(NumberFormatException nfe) {
       }
       mainMenu();
    }
    

  2. Replace the following piece of code:

    } else if (label.equals("Save")) {
       if(currentMenu.equals("Add")) {
          // add it to database
          try {
             String userInput = input.getString();
             String pr = getQuote(userInput);
             db.addNewStock(pr);
             ticker.setString(tickerString()); 
          } catch(IOException e) {
          } catch(NumberFormatException se) {
          }
          mainMenu();
       } 
    }
    

    with:

    } else if (label.equals("Save")) {
       if(currentMenu.equals("Add")) {
          Thread t = new Thread() {
             public void run() {
                makeConnection();
             }
          };
          t.start();
       }
    }
    

And this should solve the screen lockup problem. :-)

There will be lots of Java ME cool stuff at JavaOne this year. To get an idea of what's planned for then, take a look at Terrence Barr's Java ME Guide to JavaOne 2007. Q.



My very first blog

Posted by qmahmoud on April 16, 2007 at 09:46 AM | Permalink | Comments (5)

As my very first blog entry, I thought it would be appropriate to introduce myself. My name is Qusay H. Mahmoud. My first name is pronounced "Kosai", but everyone calls me "Q". Yes, there is a Q in Star Trek, and another Q in James Bond, but this Q is from Palestine. :-)

I have been working with Java ever since it was first released to the public. My first tutorial on "Sockets Programming with Java" was published on JavaWorld in 1996: http://www.javaworld.com/javaworld/jw-12-1996/jw-12-sockets.html.
A year later, my master's thesis system implementation "A Web-based Distributed Computing System" won the third place (Bomber Jacket) in the ACM/IBM Quest for Java 1997.

My first real-world Java application was a client-server system I developed in 1997 for the School of Computer Science at Carleton University in Ottawa, Canada. The system, which I believe is still in use today, automates the process of creating students accounts on a WindowsNT platform.

I started teaching Java in the classroom in 1998 at Etisalat College of Engineering in United Arab Emirates, and a year later I trained hundreds of Java developers at Nortel Networks in Ottawa. Along the way, I have published two Java books (Distributed Programming with Java and Learning Wireless Java), and many articles published on Sun Developer Network. I am interested in all Java technologies, but especially Java ME.

For more information about me and my work, please visit my homepage: http://www.cis.uoguelph.ca/~qmahmoud.

I enjoy going to JavaOne, and I look forward to meeting as many Java developers as possible this year. Q.





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds