News

Live Broadcast Of Usability Event From NUST Islamabad

December 1st, 2008

This post will be serving as a live broadcast for our Usability Event which is going to be held tomorrow Tuesday, December 2, 2008. So, please, bookmark it for the live updates. It’ll be great, but a lot depends on the wifi availability there.

A detailed overview of the event will be a part of our post event activity, and live updates will help us gather more and more public opinions. Bloggers/web analysts/user experience gurus/usability geeks are welcomed to blog about it on their blogs and or write us their views.

Feedback will be highly appreciated, so stay tuned!


Follow us at Twitter: http://www.twitter.com/zigron

Upcoming event : Usability,why Should You Care?

November 27th, 2008

Whether it’s consumer electronics, desktop software or a web application, usability comes first, i.e. the ease with which the user will use that product. The evolving technologies, geographical differences etc though cause a little variation, but standards are almost same everywhere. Usability itself is a standard, and any new, or enhanced product must follow the usability guidelines.

Being a product developer, why should you care about Usability is a single question with hundreds of answers, some known and many hidden. Discussion is the only way to explore all those, and so Zigron Inc. and CDF Software arranged a seminar on Usability in collaboration with NUST Islamabad. Seminar will be held on Tuesday, December 2, 2008 from 5 pm to 8 pm (PST) at NUST Sector H-12, Islamabad Campus.

The seminar will be a sort of discussion on current Usability practices round the world, the difference and similarities, the best and the successful, and the emerging trends. Another interesting part of the seminar will include a documentary on design Helvetica. Panelists of the seminar are people from different software houses of Islamabad and NUST, i.e. Babar Khan (ikonami), Faizan Buzdar (Scrybe), Haris Khan (Zigron), Osama Hashmi (CDF Software), Murad Akhter (Tintash) and Dr. Khalid Latif (NUST).

The purpose of seminar is to discuss the Usability standards with specific reference to modern technologies, to make better use of it within our domains and to create awareness among future entrepreneurs.

To register, please RSVP here or you can also register on Facebook.

Clarity by skewing

November 18th, 2008

Recently I got hold of this website which has applied cartogram on the Presidential Election results. It’s a great way to show relevance, visually.

Some of the images are as below.

2008 presidential election results on a population cartogram:

Electoral college by scaling the sizes of states to be proportional to their number of electoral votes:

Based on County-level election returns:

Save your Eggs…

November 17th, 2008

Few days back we had arranged a group competition to save the eggs when they are throw from the roof top in a box. Six different teams were made and each team was given around 1.45 hours and a very small budget to make these boxes. Goal was to safe eggs by adopting creative design concepts.

I am proud to announce that all eggs were saved which shows Zigron team is quite talented . The competition resulted in a tie as all designs were equally creative thus everyone was declared as winner.

Below is the slide show from the event.

Zigron Launches DareMyCompany.com

November 14th, 2008

After the successful launch of PingMyCompany, Zigron decided to develop a more interactive site where employees of different companies can have real fun. It’s DareMyCompany, whereby one company can dare others to compete in anything. For instance, lately a team of MOHAA players from Zigron had a match with MediaLinkers.

It’s not only about daring companies locally, instead you can dare an overseas company, for instance for design and development contests. So be as innovative as you can to dare companies in the areas where no one has ever dared them.

Each company when registered will have a Dare Profile with all their stats. There’s a ladder also for company’s position, and it gets updated as any two companies have a contest, and post their result.

Soon we will publish the exact rules for using the ladder and how positions are calculated. Till then please enjoy the site and start challenging other firms.

The Reasons Of Absentees: A Letter Of Explanation From WhereverTV Team

November 10th, 2008

Absentee, absentee and absentee… from Zigron’s grand trip or any outdoor activity, even completely out from blogging, it was WhereverTV team habitual of absence. This was the limit and the notice was taken by blog administrator and Haris so here is the inside story of Dream theater.

What kept us away for so many things, is the question that  every mind might have noticed on every event.  Obviously, everybody knew that we’re not there as we’ve been working but so what!!! Others were also working,  and might be working more hard, but still they spared time to do the fun part as well, that we couldn’t. Deadlines, late sittings and immediate requirements is a common thing for IT, but innovations have always been out of the way and so was the case with WhereverTV. What was behind the scene that made us so busy, goes here:

WhereverTV website is a complete portal with all the features implemented so far, standardized and implemented. From secure Paypal & credit card shopping to User Role management in Salesforce, so many integrations like YouTube, TimeZone, java mail all are working perfectly. And above all, the system is logging the events comprehensively, i.e. any activity(I really mean any activity any user performs), scheduling efficiently the events at background and exporting capabilities like to excel and pdf. The presence of webservices definitely shows the strength enough to expose the system to be accessed by wherevertv devices.

Now coming to WhereverTV device, believe me its like Pandora box and it was dared by Mark Cavicchia and Kashif Mueen that they did not only opened this box but also decided to fix, enhance and mould it to their own requirements. From UI development to protocols implementation, it was like waking a sleeping giant. Codecs implementation and then webservices integration are the tasks which seem small but ask WET embedded team how much effort they have put it. (You want to know what this device looks like, click here )

The purpose of exposing these features is not to impress you people by any means, instead to let people know about the reason for WhereverTV team to be absent from trips, outdoors and even from blogging. Go to this link, and imagine that from February to August, we were busy in making this dream happen. And when the release was about to go live, for more than two month, our development rooms were always occupied by developers. So on behalf of WET Team, Please excuse us for all the absentees, unavailibilities and non-participating.

WhereverTV has moved from Beta to Gamma but the game is still on……… Yet so many features, enhancements and upgradings are in the way. Wait and see , how far we can take this ride for you…… But one thing is for sure that we’ll be with you on Zigron blog from now onwards.

Till next blog, adios

Thanks to Zahid Zaman and Adeel Arshad for supporting me to compose this message!

CodeIgniter, does one really need it?

October 21st, 2008

Few weeks ago, I started work to make my own PHP based MVC framework, all I wanted was a simpler and lighter MVC framework. I just intended to write a controller which can communicate with the model and views. In my googling, I found out CodeIgniter reviews, which were something like “a light weight PHP framework”. I started to look into CodeIgniter. I found it exactly as I was looking for. There was no need to re-invent the wheel, so I spent next few nights with the codeIgniter. I had already worked with Symfony and little bit with cakePHP, so the question arises why to look for any other PHP MVC framework? even when these both are the top frameworks in most comparisons. The answer is yes, Actually Symfony is really great framework for medium to large web applications. It’s good if project is very much scalable and got proper time-line. But If you got a project in which you really need to apply RAD ‘Rapid application development’, in which you do not have much time for deployments, framework installations, PEAR installations, framework plugins supports, You don’t want to do Propel build models and re-generate ORM classes or you simply can’t spend time on writing YAML schema files. In addition to these you also do not want your code to get messy, you really don’t want the business-logic and presentation together in single files OR you just want nothing fancy but a simple MVC framework where you just code and execute. So that’s where CodeIgniter fits in.

Not only CI is light weight, but to assist Programmers write faster code, it comes up with already made classes like: File uploading Class, FTP class, Email class (which supports HTML email, attachments), Pagination, Data encryption, calendar classes and few more. These all classes are by default part of CI. To use those classes, programmers need to include them in their actions. CI uses Active Record for database access, which is fairly simple. CI does all error logging just like the giant frameworks. CI also uses Search Engine Friendly URLs by default.

Now with open source PHP frameworks like CI, symfony and cakePHP, coding is done OOPs way, code remains managed and re-usable. Also Web-applications are built faster and scalable. The good thing about PHP related technologies is that they are open-source, which also means greater and world wide support through a healthy and ever growing community.

Identity Theft: Biggest Threat To Web 2.0

October 14th, 2008

Having spent most of the time on Internet, social networking is very obvious. While exploring some profiles of friends and some friends of friends I happened to land on some of the celebrity profiles. Though m’ not a big fan of celebrities, but celebrities are celebrities after all, and it urges sometime to know about them if they’re near to you.

image courtesy: identitytheftprotect.usWell, same happened to me, so I got into the celebrity profiles. One profile I’d spent more time on was a very well known local model, so I knew a little about her earlier as well. Profile of her, however, seemed fake to me, and something that came in my mind at first instance was nothing other than “Identity theft”. Discussed it with friends concluded that how come a busiest celebrity can be so active on social network, but it’s mobile world so anything can happen.

Well, this celebrity story was over and out from my mind after a week, but not the Identity theft itself. I kept on finding more about Identity theft and have come up with the fact that “Identity theft is the biggest threat to Web 2.0”.

Identity theft is the biggest threat to Web 2.0 because it’s the biggest and speedily spreading internet crime. According to a research conducted by Gartner, average 28.5 people are becoming victims of identity theft each minute. In 2001, the rate of growth of identity theft was 11% to 20% and it grew upto 80% in 2002 and in 2005 it was 700%. [Source: Identity Theft Resource Center]

The research classifies the identity theft into two types, i.e. true-name identity theft and synthetic identity fraud. The first one is one in which the criminals use credentials of an actual person or business and this stands only 10% to 15% of the total cases while the other one is based on fabricated data and stands 85% to 90% of the internet fraud cases.

Identity theft affects not only individuals but also business and social groups. From Lori Drew’s Myspace case [a 49 years old woman created a false Myspace account in the name of a 16 years old boy, intending to get information from daughter’s friend “MTM” about their relationship. Later the fictitious online relationship got ugly and to end up all this "Josh" broke up with MTM and the girl committed suicide] to online phishing attacks there are hundreds of different situations whereby people suffer. Social Networks are likely to be more vulnerable to identity theft risks, as grabbing user information and creating false accounts on these networks is none too difficult.

It’s a proven fact that technology and innovations have benefited crimes along with the society for betterment and improved lifestyle. But, since there’s always a room for betterment, so is this in the case of Web 2.0. When we talk about communities, user generated content, direct access to the end user and blah blah, one question that’s of equal importance for everyone is “How to maintain your true identity?”

Moderated content and maintaining online reputation systems can resolve this very issue, but almost every social network is after more and more growth in terms of userbase, and there’re some with million of users, i.e Facebook , Orkut, Myspace etc, and it’s nearly impossible for them to keep a check on each and every activity within their online premises. Maintaining privacy and other policies at social network’s end and realizing social responsibility at users’ end does make a difference, but looking at the number of identity theft cases in each minute, the difference seems greater.

Having internet law may be a solution, but which country’s law t will be, or will one country’s law be acceptable in other? International Internet Law may be….! Well that’s a long debate and the speed with which technologies change is not the speed with which laws get updated….!

Finally I found something of my interest and thought that it might help combating the issue. it’s “Web 3.0”. It’ll hopefully be more efficient than Web 2.0, when we’ll have all OpenID and intelligent web [Semantic Web] based applications and websites. With OpenID when user will have same credentials for many websites, he’ll have better control. But the threat of identity theft remains there, when a normal user can do all this, a cyber criminal can also.

So my question is, “we’re on the way to make the web more intelligent, but how can we make the web that intelligent to identify the cyber crimes like identity theft?”

Visual design and story telling..

August 22nd, 2008

This week I had the pleasure to attend An Event Apart design conference. It was a great experience to hear some great presentations and learn new approaches towards design. In next few posts I will try to share all of my experiences.

Starting off the best presentation of the day one was by Jason Santa Maria who is the Creative Director at Happy Cog studios. It was about “Storytelling by Design”. He had raised a very good point that why the design experience on a Wired in-print magazine is so different then Wired’s web experience. The point was that in-print designers try to set the mood around the content but on the web we lose the esence of story telling and just focus on content. Ironically, I think it should be the other way round as we have more tools and independence on the web. The other issue designers face is that we don’t have the control on the medium. Unlike print where the designer can exactly control the layout web designers are at the mercy of browser type, screen resolution and personal settings.

A very interesting book site NoOneBelongsHereMoreThanYou.com was shared as a case study for its out of box approach.I agree with Jason that its wonderfully done and it has a very unique approach. The image on the the left is the homepage and you will see that it doesn’t have any traditional elements like About Us or Info rather it has a compelling text which draws you in. Similarly I also liked Jason’s site, which tries to break away from conventional design and take each post as an individual story that’s why you will see different design around each post.

Great visual design which has a story to tell has been around for many years and its very apparent from the below example of Charles Joseph Minard graphic illustration of Napoleon’s Russian campaign of 1812. If you move from left to right, the design illustrates the size of Napoleon’s army in yellow when he started his march toward Russia and moving from right to left in black you can see the size of his army when he was returning to France. Its amazing to see that how a simple design explains such an dramatic event in history. I think at the end it was just Napoleon and his buddy who reached back.

Jeffry Zeldman also gave an interesting example of how conflict between design and marketing team can result in a funny situation. RealPlayer wants to be a dominat player in media players but on  Real.com it seems that someone was able to convience the the company to psuh a paid version of realplayer down our throat by making free version very hard to find. Apparently someone wants us to download the paid version only. Nice job!!

At the end I will also encourage you to viist a design site named Fray.com which has some great visual stories. In my next post I will share some more great snippits on design and in the meanwhile if you know some other great design sites then please share them in comments.

Mobile Development Overview..

August 21st, 2008

Mobile space is the next paradigm of computing where more and more mobile devices are getting the computational power to now host interactive native applications. Offcourse iPhone has taken a giant leap but now other devices are also catching up. Recently we spent sometime to figure out which development environment will be best suited for new generation of mobile applications. In this report we have not covered FlashLite and iPhone.  As a result we produced a technical discovery document to explore different mobile application development environments and how one can go about it. Below is the report and you can also download the pdf version of report.

This report was created by : Abdul Wadood, Atifa Nadeem, Naima Khan and Haris Khan.

Overview:

Mobile application depends heavily on the exact requirements. Our basic assumptions are stated in the section 3. Based on the basic requirement to create a very generic mobile application following are the three approaches in the order of our preference:

  • Considering the basic and generic requirements Java ME is the ideal development platform. We can adopt different approaches within Java ME to reduce the development effort to make the application ready for all possible platforms and devices. Biggest drawback for this approach will be the application performance and security as this app will run on top of JVM.
  • Second approach is to create a custom Mobile Execution Environment. We will need to develop this environment for each platform with minimum interfaces/APIs as per our requirements. This will result in more effort to create such MEEs for each platform/handset but application development will be rapid. Users will require downloading our own MEE just like they need to download JVMs.
  • Finally the most stable and secure approach will be to create each application in platform’s native language. This will be requiring substantial effort but application’s performance will be at its best.

Development Platforms/Technologies

In this section we have briefly explained how each development platform will be used across different handsets and OS for basic features.

1)- Java ME (formerly, J2ME)

Introduction / Development Approach:

  • Java ME Platform represents the only true open solution for building mobile applications for the industry. The technology allows portability of applications between platforms and investments are kept to a minimum through the possibility of reuse.
  • The Java ME technology is based on three elements:

a- A configuration provides the most basic set of libraries and virtual machine capabilities for a broad range of devices.
b- A profile is a set of APIs that support a narrower range of devices.
c- An optional package is a set of technology-specific APIs.

Deployment Approach:


To be MIDP 2.0-compliant, devices must support OTA provisioning. The easiest way to package MIDlets for wireless installation is to use the J2ME Wireless Toolkit, which incorporates a small provisioning server that emulates a production OTA environment. Available in version 2.0 Beta 2 and later versions of the toolkit, this nice feature enables you to get an idea of whether a server will provision a device with your application successfully without the hassle of setting up and configuring a local web server to act as an OTA server. Some MIDP 2.0 features – like the push registry – are available only to applications downloaded via OTA. If your application uses those features, the built-in OTA server is a critical tool of the development process.

Features:

PUSH

The MIDP includes a feature called “PUSH Registry” to push data from server to mobile devices, without the interaction of user. The MIDlet registers a port along with the protocol name in the mobile device. From the server, a message is sent to the specific mobile device using the particular protocol and port where the MIDlet application is registered to listen. After the message is delivered to the mobile device, the AMS calls the MIDlet application. Once the message is delivered to the MIDlet, it is the application’s responsibility to process the message accordingly.

SMS Integration

  • The Wireless Messaging API (WMA) is an optional package for J2ME that provides platform-independent access to wireless communication resources like Short Message Service (SMS). WMA can be used on top of CLDC and MIDP.
  • There are many third party APIs available for SMS integration in Java ME applications. Some examples are Java SMS library from new-phone.com, SMS JDK from NCL Technologies Ltd, jSMS from objectXP, etc.

Data Synchronization:

  • Recently released, Sun’s Mobile Enterprise Platform (MEP), provides two-way data synchronization with security, device management and off-line access features for enterprises. It can integrate data from a wide range of back end applications.
  • A third party API, Sync4j is an open source initiative to deliver a complete mobile application platform implementing the SyncML protocol. SyncML defines a standard way to synchronize data and remotely manage devices. Sync4j provides SyncML client APIs (J2SE, J2ME and C++) that you can use to build an application.

Devices and Platforms:

Motorola:

  • MOTOMAGX, Motorola’s next-generation Mobile Linux®, supports three different application environment– Java ME, Web UI and native Linux
  • MOTODEV Studio for Java ME, Motorola’s robust toolset for developer innovation currently supports the Java ME application environment on many Motorola handsets and wireless modules

Nokia:

  • Nokia phones have an extensive Java ME API set
  • Nokia provides support for the industry’s leading open-source Java™ IDEs: NetBeans and Eclipse. Both IDEs offer robust tools that make it easy to create high-quality Java applications efficiently

Blackberry:

  • Many new Blackberry devices support the Java 2 Platform, Micro Edition (J2ME), primarily because Java technology makes developing applications so much easier. Its platform-independence eliminates many porting woes and its automatic garbage collection lets developers concentrate on application logic rather than memory management
  • In addition to Java-based handhelds, RIM offers a BlackBerry Development Environment for J2ME

Samsung:

  • Some Samsung handsets give errors for J2ME (user experience). Some users have reported errors like Samsung not suitable for J2ME game developers, slow emulator, Java apps can only be loaded via OTA, giving “Unsupported content error” on Samsung F490 phone

LiMO:

  • LiMO application developers will be able to use SDKs to write managed code running in a Java virtual machine, browser apps for WebKit, and native code.

S60:

  • It supports Java (J2ME MIDP 2.0 commonly, but varies from phone to phone) applications and Symbian C++ applications.

Wireless Providers:

Verizon

  • Verizon Wireless doesn’t offer J2ME support on their phones. Instead, it uses BREW but one can run J2ME applications via BREW-Authored KVM but still it is not that simple

T-Mobile

  • Users are able to download J2ME apps (JAD+JAR) if they have an offline app, like a standalone mobile game but if the app requires an internet connection the users will be able to access internet if and only if:
  • The application was signed with a T-Mobile certificate, or
  • The user has a $20 “total internet” plan instead of the regular $6 T-Zones one, or
  • The handset was not bought through T-Mobile

In short, if you are aiming for a mass-market consumer application and not just one targeted at business users or tech-savvy users, your hands are pretty much tied. The only way to achieve that goal is to go on-deck with T-Mobile

AT&T

  • AT&T appears to be a little less strict than T-Mobile. You can download J2ME applications from anywhere, other applications that want to use socket communication, access to the file system, address book and messaging (SMS/MMS) will probably be blocked

2)- BREW

Introduction/ Development Approach

  • BREW is a software platform that can download and run small programs for playing games, sending messages, sharing photos, etc.
  • Using BREW, you can easily port your applications between all Qualcomm devices.
  • BREW applications can be written using Java™, C, or C++.
  • Unlike the Java ME platform where any developer can upload and execute software on any supported handset, BREW applications must be digitally signed
  • The BREW developer community is fairly small and limited to Qualcomm’s boards and web sites.
  • BREW code can only be compressed if you devise your own method or buy a commercial solution.

Deployment Approach

  • Compile for the specific BREW version available on the handset.
  • Installer Packaging Options: OTA

Features

  • PUSH:

Brew compatible mobile phones can get push based sms/email on the Alltel’s network

  • SMS Integration:

Interfaces like ISMS, ISMSMsg, ISMSNotifier, and ISMSStorage are there to handle SMS integration for BREW applications.

  • Data Synchronization:

Open Mobile Alliance for Data Synchronization and Device Management.

  • Devices and Platforms

The BREW platform is pre-integrated into the MSM™ chip software and includes reference implementations for many other device-specific issues (drivers and UI). All the mobile vendors doesn’t provide with MSM™ chip. So, we have very limited number of mobiles by default for running BREW application.

Wireless Providers

Every mobile vendor is supposed to provide handset with the support of BREW for different wireless providers.

3)- Windows Mobile

Introduction/ Development Approach

  • Windows Mobile is an operating system for mobile devices, based on Microsoft Win32 API.
  • Devices that run Windows Mobile include Pocket PCs, Smartphones, Portable Media Centers, etc.
  • For application development there are different options available, including:
  • Writing native code with Visual C++
  • Writing Managed code that works with the .NET Compact Framework
  • Developing an application using Java Me. There is a limitation if you develop an application in Java ME for Windows Mobile platform. Sun doesn’t officially support windows mobile devices and Sun hasn’t released an official JVM for pocket PC’s so you must go to a third party solution if you intend to use Java ME on Windows Mobile platform.

Deployment Approach

Windows Mobile-based Smartphones and Windows Mobile-based Pocket PCs (Phone Edition) can be bootstrapped by means of over-the-air (OTA) Wireless Application Protocol (WAP) push. This method is useful if the mobile operator prefers to bootstrap the device over the air at the point of sale or after purchase. In this method, a provisioning document that uses the format defined in the WAP Provisioning specifications can be pushed to the device over the air through the WAP connectionless non-secure push mechanism over the Mobile Terminated Short Message Service (SMS) bearer.

Features

  • PUSH

The “Direct Push Technology” from Microsoft uses Exchange ActiveSync to keep data on a Windows Mobile based device synchronized with data on a Microsoft Exchange server. The ActiveSync technology on the device manages the direct push communication with Exchange Server. It establishes an HTTP connection with the server for a specified time, and then goes to sleep while waiting for the server to respond. The server responds with either a status indicating that new items were received or that no new items arrived. The device then sends either a synchronization request or another direct push request. Exchange Server 2003 Service Pack 2 includes a direct push component that augments the Exchange ActiveSync infrastructure that supports synchronization.

  • SMS Integration

.Net Compact Framework provides different DLLs for SMS integrations (Microsoft.WindowsMobile.dll, Microsoft.WindowsMobile.PocketOutlook.dll). Using these DLLs you can integrate SMS Send and Receive functionality as well as SMS filtering support in your mobile application.

  • Data Synchronization

Exchange Server 2003 is used to synchronize data using ActiveSync. It uses OTA for Installer Packaging.

  • Devices and Platforms

Nokia & Sony Ericsson
Net60 is an implementation from Red Filve Labs to bring .Net Compact Framework applications unchanged, to Symbian platform (the OS running the Nokia and Sony Ericsson Smartphones).

Wireless Providers

Most of the carriers have handsets with Windows Mobile.

If you have any queries please feel free to contact me at haris[dot]khan[at]zigron[dot]com

Download the report