Wednesday, October 22, 2014

Problem with proxy settings via sbt-0.13.6

I discovered that there are a few problems with proxy settings using sbt-0.13.6 and sbt-0.13.5 does not encounter this problem.

Saturday, August 7, 2010

IFE - A Charity to promote the message of PEACE.

For the past few months, I have been very busy devoting my personal time, to IFe. IFe stands for Islam Festival Edinburgh, and its an initiative to promote the message of ISLAM which stands for PEACE that is so misunderstood by the world today and linked to terrorism & violence, which is not what it is really all about.

I have been questioned by my peers @ work of what ISLAM is , and what  the QURAN all about. To them, I invite you to go to www.islamfestival.com and DISCOVER ISLAM.

In religion, BELIEF comes first , than rationalising it. In maths / science, PROVABLE facts, come first then a CONCLUSION, to support the HYPOTHESIS. If today, blue-tooth and WI-FI technology does exist and mp3/images/documents can be downloaded, then surely- why is it so hard to believe that more than 1400 years ago , there was a way for GOD's word which comprises of the Holy Quran to be downloaded to a very human prophet. And if versions in software and the need of upgrades do exist, so from an OLD testament(downloaded to Moses), to the NEW testament (downloaded to Jesus) , to the Quran (downloaded to Mohammed P.B.U.H) as last and final release, so hard to believe...

And believe it or not, the technology to make human's as receivers of data- possible is yet to be DISCOVERED, sooner or later. And has SCIENCE been able to prove the existence of ANGELS, the existence of SOULs ? Surely, if matter is energy than we should have detectors to detect this natural phenomenon.

Well, IFE was made possible by HTML, JQUERY, PHOTOSHOP and the content managed by the social media elements like Twitter, Flickr ,Youtube. After all, I live and breathe and support social media REVOLUTION, coz I am a very SOCIAL being!!!!

Please see it here.

Tuesday, June 29, 2010

Paying a tribute to Hannah Barbera

Meet George Jetson, his boy Elroy, his daughter Judie, Jane - his wife....



Yes , in the 1960's came this cartoon, and during my growing up years, I was fascinated by the technology of VIDEO calls (which is now a reality) , flat TV's and touch screen computer that interacts with the user ... to name a few, and still an AI robot is yet to come ...

Hence for the digital inspiration, I take my hats off to Mr. Hannah & Barbera, for their vision of the future , a peek into the `year -2062' , about 50 years ago, long before anyone thought it was imaginable , let alone possible....


Sunday, May 23, 2010

Thinking about Forms and Usability...

Notes from the book - Forms that work: Designing Web Forms for Usability by Caroline Garret

There is a theory to think about when designing FORMS !
The theory is of the three layers of the form: Relationship, Conversation, and Appearance .

The relationship of a form is the relationship between the organization
that is asking the questions and the person who is answering.
- Pursuading people to answer.
   - Pick the right moment to ask a question.
   - Three rules that infl uence response rates
         - Rule 1: Establish trust.
              1. Show that the form is published by a real organization.
              2. Make it easy to contact the organization that publishes the form.
              3. Ensure that the form has a clear purpose.
              4. Make sure that the form looks as if it has been designed by a professional.
              5. Keep advertising away from the form.
              6. Check that the form works correctly: no defects, no typographical errors.

         - Rule 2: Reduce social costs.-Social costs are bad feelings, like being made to feel inferior or being  put at a disadvantage.
                      1. Ask for answers; don’t demand them.
                      2. Keep the form short and easy.
                      3. Help users to feel in control of the form by giving them a progress indicator
                          or summary menu.
                      4. Minimize requests for sensitive or personal information.
                      5. Design questions that users can answer.
                      6. Use error messages that respect the effort the user is making.
                      7. If the user does make a mistake, preserve as much of that user’s work as
                          possible. Keep retyping to the minimum necessary to correct the problem.

         - Rule 3: Increase rewards.
People are more likely to respond if they perceive that they will get some reward by doing so.

How long can a form be ?
The form is the right length if these factors are in balance:
● There is a basis of trust: the user trusts the organization enough to
put in some effort.
● The user perceives that there is suffi cient reward for completing the
form.
● The effort (mental effort, number of questions, time to complete the
form) is appropriate.

Who will answer your questions?
Understanding your users is often called “user profi ling” or “user needs analysis.”

To ensure that you get honest and timely data from your users,
make sure that you:
● Pick the right moment to ask a question;
● Think about who will use the form and his or her relationship with
the organization;
● Understand the user’s goals associated with the form;
● Ensure that the reward the user gets from fi lling in the form is in
balance with the amount of effort required to complete it.

- Asking for the right information

Find out why you’re asking your users for information, what you’re going
to do with it, and when you need it:
● Asking for information that you don’t need is bad.
● Check with stakeholders to see what information is really needed.
● Users will assume that you will actually use the information you
request, so make sure you do use it in a sensible way.
● Find out what your competitors and similar organizations are doing.



The conversation of a form comes from the questions that it asks, any
other instructions, and the way the form is arranged into topics.
- Making questions easy to answer.
The four steps of answering a question:
1. Understand the question.
2. Find the answer.
3. Judge the answer.
4. Put the answer on the form.
To make these steps as easy as possible:
● Ask about concepts that the users are familiar with, using words
that they understand.
● Think about how users fi nd the answer. Should you offer help about
where an answer could come from?
● Think about whether users will want to answer. Is this the right
moment in the relationship to ask this question?
● And think about forcing users into your options. Could you offer an
“ other” option to cater for the unexpected?

- Writing useful insturctions
Start by making sure that your instructions are in plain language:
● Use words that your target users are familiar with.
● Use simple sentences in the active voice.
● Get rid of big blocks of text.
● Put choices before actions: “If” before “then.”
● Remember that good headings help, bad headings hurt.
Then review your instructions to make sure that you have only the useful
ones and that they are in the right place:
At the start of the form, you need to do the following:
● Include a title that says what the form is for.
● If you have gathered answers, then provide a list of things to gather.
● If some people should use a different form, then send them off to it.
But don’t put things that happen at the end of the form at the
beginning.
- Choosing form controls - input box, checkbox, dropdown
Think about users’ expectations of how the controls work.
● If typing the answer is more natural, then go for a type-in box.
● If users are likely to make mistakes when typing, then opt for
something they can click.
● If there are a lot of options, using a drop-down may be best. But
could you redesign the question instead?
● If the users are able to select more than one option, checkboxes are
likely to be the best control.
● If the options all look alike, you may do better to let the users type
into a text box instead.
● If the users need to see the options to understand the question,
then radio buttons or checkboxes require less effort. Drop-downs, radio buttons, and checkboxes all need options as well as labels.
Describe your options clearly and choose a sensible order for the options.
Specialist controls such as calendars and maps have their place, but if
you do use them, then make sure that you offer a plain text alternative.

- Making the form flow easily
  • A good conversation fl ows naturally from topic to topic. Exploit this to break up large forms into manageable chunks.
  • If your form includes some gathered or third-party answers, then find a good way of allowing users to store the form and come back to it, and opt for a summary menu rather than a progress indicator.
  • Avoid surprising users with sudden changes. If you need to be selective about what questions you present to users, then build pages that reflect their earlier answers.
  • Be gentle with errors. Validations may help guide users to correct input, but they may also force incorrect (or even downright stupid) answers out of reluctant users and undermine the relationship.
  • Be as careful with the fi nal “thank you ” or acknowledgment page as with the rest of your site. Even if you have to break bad news to the user, try to be as helpful as possible while doing it.

The appearance of a form is the way that it looks: the arrangement of
text, input areas such as fi elds and graphics, and the use of color.
- Taking care of the details
● End each label with a colon.
● Use sentence case for labels.
● Use an asterisk as a required fi eld indicator, supplemented by the required markup and a short explanation of the indicator at the start of the fi elds.
● Choose a legible font such as Verdana, use it at a large size, and
make sure that users can easily change the size.
● Aim for a line length that is long enough to create coherent phrases
but short enough to allow easy eye-movements back to the start of
each line.
- Making the form look easy
  • When users are dealing with the questions and answers, they focus
    tightly on the fields and labels.
    But when they swap to a different task, such as asking “Who are you ” or
    looking for contact details, they snap out of the narrow focus and start
    looking at the page furniture. Help them by making sure your form is
    lightly but clearly branded as part of your site.
  • Lining up forms to a vertical grid makes them look tidy and thoughtfully
    designed; that increases user confi dence in the form.
  • Forms look easier to handle if the fi elds are organized into groups.
    Placement is the easiest, clearest way of showing groups, but lines may
    undermine grouping.
  • Once you have established a grouping pattern, don’t break it.
  • Two-column layouts can create ambiguous reading orders; users can go
    across horizontally or down vertically. Avoid using two columns.

Saturday, May 22, 2010

Page Speed

Page Speed - is an open-source Firefox/Firebug Add-on. Webmasters and web developers can use Page Speed to evaluate the performance of their web pages and to get suggestions on how to improve them.
Read more about it here.

One ON One on R-She-Yeah

Okay, my thoughts of doing ONE thing over an over - its BORING !!!
Well , an actor gets to play different type of ROLE's , I too believe in VARIETY and taking up challenging, diverse tasks from a technical perspective- just to feel ALIVE, and live ON THE EDGE. I love being CREATIVE,  having CREATIVE visions, taking CREATIVE decisions, while staying FOCUSSED and persistent to accomplish my ideas. Thats me, simply r-she-yeah

Thursday, May 20, 2010

Notes about differences between Java and JavaScript

Dynamic binding VS Static binding
JavaScript features DYNAMIC binding, so all object references are checked at run time. Java, on the other hand, is based on STATIC binding, meaning that all object references must exist and be valid at compile time. However, an object-oriented language may require dynamic method bindings because polymorphism allows multiple definitions of methods sharing a common name, and calling such polymorphic methods often cannot be resolved until run time. The most obvious reason for this difference is that JavaScript is NOT compiled, so checking object references at compile time has no meaning.

Object-oriented VS Object-based
JavaScript is based on a simple object-oriented paradigm. This paradigm is often called object based, as opposed to object oriented. If you are used to a truly object-oriented language such as C#, Java, or C++, you will find much of that functionality is missing in JavaScript. For example, classes do not exist in JavaScript (all objects belong to one “class”), nor do packages (because a package groups classes together). The object hierarchy in JavaScript is a containment hierarchy, not an inheritance hierarchy as in Java and C++. That is, an object does not inherit from other objects, but it can be contained by another object if it is a property of that object. Most object-oriented languages require static resolution of objects at compile time.
However, an object-oriented language may require dynamic method bindings because polymorphism allows multiple definitions of methods sharing a common name. Calling such polymorphic methods often cannot be resolved until run time. JavaScript is completely based on dynamic binding. That is, object references are checked at run time. There are many other differences between the object paradigm in JavaScript and the one in full object-oriented languages (such as Java and C++).

Reference: Advanced JavaScript by Chuck Eastom