Showing posts with label review. Show all posts
Showing posts with label review. Show all posts

Sunday, December 19, 2010

Yes, Riding on Linux

I received a free WiMAX USB dongle (called the Yes Go) last Tuesday, given how busy week days usually are, I only managed to really get it working on my Ubuntu now. In this blog, I am not going write about the Yes site usability, how interesting the speed can go (by the way, if you think 10Mb/s is impressive enough, that's the speed HSDPA can give. WiMAX can run up to 40Mb/s.); Instead, I speak about what I went through getting it to work on my Linux machine.

Yes Go doesn't have (publicly) a Linux driver (and its source), just like the Clearwire USB dongle and many others. Yes Go is manufactured by Infomark, IMW-U300, which uses GCT chip (GDM7205 most likely, with uClinux. It can push >30Mbps of download and 6Mbps of upload):

(Note: I'm not a Linux hacker, so all I could do is usb_modeswitch and some simple digging. I'm happy to learn how to grab the image and boot into it when I have the time.)
$ screen /dev/ttyUSB0
Model name: IMW-U300   
 Manufacturere: INFOMARK
%WIMAX MAC: ff:ff:ff:ff:ff:ff
/dev/usb0
3Parameter block: version 2 in NVRAM EEPROM

$ lsusb | grep 1076
Bus 001 Device 039: ID 1076:7f00 GCT Semiconductor, Inc.
Given that (and I-ANAL - I Am Not A Lawyer), GCT could have violated the GPL (see also this Taiwanese post).

After hours of research, I contacted @YesCare for the driver, the case has been escalated and am still pending for solution at the time I'm writing this blog. This left me with one ugly workaround to use Yes Go -- bridging from a virtual machine (I use Sun's/Oracle's VirtualBox) running Windows.

The basic steps (more discussions in this VirtualBox's forum thread):
  • Create an ad-hoc wireless network in NetworkManager.
  • Add a bridge adapter in VirtualBox, select your wireless LAN (e.g. wlan0).
  • Turn off usb_modeswitch before plugging in the USB dongle. See /etc/usb_modeswitch.conf.
  • Start VirtualBox with root (or configure fstab to allow current user to read/write the USB device nodes).
  • Setup Yes Go, once connected, bridge it with your adapter added earlier.

That ends a chapter.

Meanwhile, for preregistered users, today is the last day to activate your account in order to retain your reserved phone number.

To make myself to really know what I'm going to pay for, I wrote a JS-based calculator last night using mvc.js (before Yes updated their site with the new calculator this afternoon). Feel free to fork it with jsfiddle or github.

Saturday, April 19, 2008

A Review on Adobe Flex Builder Linux Alpha 3

Initially when I started to write this review, I downloaded and set up Adobe Flex Builder Linux Alpha 2 on my Ubuntu machine, faced some troubles which some will be addressed at the Troubleshooting section. It was left with just three days for evaluation and I got stuck with work. By the time I had the time to start a proper review on it (by following the materials provided by Adobe), it was already expired. I had to download the Alpha 3 instead, which was released on 31st of March.

Just in case that you had the wrong idea, Adobe Flex Builder (I will call it the "general release" to avoid confusion), which can be obtained from this address, is not the same project with the Linux release. They are both on two different projects, where the former follows the Flex product schedule; the latter at this stage is not a full release and not all features of the general release are implemented in it. Please read the release notes of it for a list of supported and unsupported features.

To give a short introduction about myself, I have no Flex technical experience prior to doing the review, knowing just general idea of it. However, I'm a supporter of the MyFUG (Malaysian Flex User Group) and I attended most of their meetings.

Environment

Flex Builder is an add-on to Eclipse IDE, a well-known IDE especially for Java-based development. The general release is a commercial add-on but is completely free for educational purpose, it is also available free for 60 days evaluation. The Linux release however is release for evaluation purposes only and it has a fixed expiry date for each release. If you want to find out more about the price and licensing details of Flex Builder, please read this link.

Eclipse is a mature, feature-rich and extensible IDE. Having Flex Builder to be an extension of it gives developers a very-well integrated environment for different kinds of development that could fall under the same project, e.g. developers can easily switch from Flex Development perspective to the Java Development perspective, etc.

Features

As you would have already read from the release notes, the Linux release doesn't support design view at this stage. It provides you with Flex SDK version 2 and 3, Flash Player, JSEclipse, Adobe AIR support and more others that you can read from the What's New.

Without a Design View could actually be a big issue to some people, but given that Unix-based users generally love text more than GUI, it could just not be the case. Plus, writing Flex application using vi editor can longer be that quick in comparison as the Flex Builder provides you with features such as content assistant, quick navigation to API source, etc.

Followed the review guidelines, I developed a simple application with an advanced data grid (read also this) which its data is populated from a local XML file through the HTTP service. The advanced data grid is part of the Data Visualization which is shipped as a trial with the Linux release since Alpha 2, it therefore places a "Flex Data Visualization Trial" watermark in the UI as you can see from the screen-shot below. Another feature that comes as a trial is the Automated Testing.

The solution to remove the watermark seems explained in this blog entry.

Development

So you may question, how bad it is without the Design View. I wrote nearly 50 lines of code with not more than half of them are realizable in the general release via Design View, i.e. <mx:Application/>, <mx:Panel/> and <mx:AdvancedDataGrid/>. The rest of the code is <mx:HTTPService/> and action scripts. Therefore the answer is very subjective to the nature of the application which you are building. If it consists of a lot of UI components, the development can definitely be sped up with drag-and-drop and other features provided by the Design View.

I am not too sure if the general release has the same behaviour (which I doubt no), content assistant does not work for advanced data grid. It turned out to be quite annoying, but knowing that Data Visualization is still at trial, we can safely say that it is not a bug.

I am also very much concerned with having a Maven 2 plug-in for Flex development. There is a popular issue tracking this at SDK-12730.

Troubleshooting

I had some issues initially when I tried to install the Flex Builder on my system, which is an Ubuntu 7.10 Gutsy Gibbon running on a 64-bit machine. There were a few requirements mentioned in the release notes that I missed out the first two:
You will have to run update-alternatives to replace the default java executable, e.g.
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.5.0-32bit/jre/bin/java 50
I also hit into the following error when I was trying to start the installer with JRE6:
Runtime link error - it appears that libXt got loaded before libXm,
which is not allowed.
Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)

Stack Trace:
java.lang.NoClassDefFoundError
at sun.java2d.SunGraphicsEnvironment.addDirFonts(SunGraphicsEnvironment.java:722)
at sun.java2d.SunGraphicsEnvironment.registerFontsInDir(SunGraphicsEnvironment.java:602)

The quick workaround to this is to set the AWT_TOOLKIT environment variable with the value XToolkit.

Further Reading and Other Resources