Thoughts about coding and books

Paypal [L_SHORTMESSAGE0] => Internal Error [L_LONGMESSAGE0] => Timeout processing request

Paypal error messages are very unfriendly. It can say “Timeout processing request” without delay like 2012-12-20 19:45:34 INFO – Paypal call: https://api-3t.sandbox.paypal.com/nvp?VERSION=74.0&USER=username&PWD=12345&SIGNATURE=12345&METHOD=SetExpressCheckout&RETURNURL=http%3A%2F%2Fttawidget.dev%2Findex.php%2Fpayments%2Fpaypal%2Fsuccess&CANCELURL=http%3A%2F%2Fttawidget.dev%2Findex.php%2Fpayments%2Fpaypal%2Fcancel&L_PAYMENTREQUEST_0_AMT=2.00&L_PAYMENTREQUEST_0_ITEMAMT=2.00&L_PAYMENTREQUEST_0_CURRENCYCODE=EUR&L_PAYMENTREQUEST_0_DESC=payment+description 2012-12-20 19:45:34 INFO – PayPal call response: Array (     [TIMESTAMP] => 2012-12-20T19:45:34Z     [CORRELATIONID] => cdea44429896f     [ACK] => Failure     [L_ERRORCODE0] => 10001     [L_SHORTMESSAGE0] => Internal Error     [L_LONGMESSAGE0] =>Read more about Paypal [L_SHORTMESSAGE0] => Internal Error [L_LONGMESSAGE0] => Timeout processing request[…]

Quality software testing guidelines (for startups)

Importance of software testing=quality assurance=QA cannot be stressed enough.  Here is experience from my startup regarding good quality testing process.

The goal of testing is to guarantee that the released code does not contain any critical issues. This is contrary to understanding that this is just finding as many defects as possible. There are 2 main types of testing: a) testing new features and bug fixes b) regression testing to validate that old code is still working.

Reporting defects

When issue is discovered then it is important that it will be very easily understandable and reproducible. Making extra effort to report issues in understandable format means that development team will be able to fix the issue much faster. Recommended format for reporting bugs is: Read more about Quality software testing guidelines (for startups)

Access virtualbox shared folders from Ubuntu and fix ruined ubuntu installation.

If you are running Ubuntu virtualbox guest then you cannot access the shared folder under /media/shared with regular user. However you can fix this by adding your user to vboxsf additional group.

Important! make sure you append the additional group so that other groups are not removed! Run te command below as exactly as seen and replace you username. If the permission is not applied immediately then reboot.

usermod -a -G vboxsf username

In case you forgot flag -a then it is bad but not hopeless 🙂 Read more about Access virtualbox shared folders from Ubuntu and fix ruined ubuntu installation.

How to hire a freelancer – 10 lessons learnt

These days everybody are full of ideas but no time to make these happen. Same here, I have great business ideas every a few weeks but while working full-time on my day job I have hard time to implement these on my own and all my friends are also very busy.

I decided to try out the www.getacoder.com service to find affordable quality help to my projects and so far I have not been disappointed while following the below steps.

1. Write down IN DETAIL what you want to be done.

Before posting a job to www.getacoder.com make sure you have as detailed as possible overview of your requirements. This is called BRD – Business Requirement Document. This must list everything like, user must be able to register, user must be able to login etc. Programmers can take this doc and can implement every feature step by step. Read more about How to hire a freelancer – 10 lessons learnt

Add Facebook login to PhoneGap/Cordova Android app Easiest way – UPDATED

First ensure that you have Basic PhoneGap application running on your android. Check this tutorial if needed. Official tutorial is not so good but might help you out if Phonegap Facebook tutorial here fails. For additional information go to https://github.com/davejohnson/phonegap-plugin-facebook-connect/blob/master/README.md.

  1. Download PhoneGap Facebook plugin from https://github.com/davejohnson/phonegap-plugin-facebook-connect/tree/master/www
  2. Move cdv-plugin-fb-connect.js into your android phonegap webroot assets/www
  3. Include it in index.html <script type=”text/javascript” charset=”utf-8″ src=”cdv-plugin-fb-connect.js”></script>
  4. Add <plugin name=”org.apache.cordova.facebook.Connect” value=”org.apache.cordova.facebook.ConnectPlugin” /> into res/xml/plugins.xml Read more about Add Facebook login to PhoneGap/Cordova Android app Easiest way – UPDATED

Basic PhoneGap Android app from scratch step-by-step

This tutorial assumes that you have eclipse which is set up for regular android development and you can create new android projects. Phonegap files are now named cordova

  1. Create new Android project in eclipse.
  2. Download package and extract cordova-2.6.0.jar  from zip file from http://phonegap.com/download/
  3. Add cordova-2.6.0.jar to your projects build path. In eclipse open project properties > Java Build Path > Add Jars
  4. Change main Activity superclass to DroidGap
  5. Replace setContentView(R.layout.main); with super.loadUrl(“file:///android_asset/www/index.html”);
  6. Create folder xml into the project res folder. Add there plugins.xml and cordova.xml from the package you download before.
  7. Add into AndroidManifest.xml <uses-permission android:name=”android.permission.INTERNET” /> and     <uses-permission android:name=”android.permission.ACCESS_NETWORK_STATE” />
  8. Create folder www into projects assets folder.
  9. Add index.html file into assets/www. File content is regular HMTL.

By now you can already run the program. Next steps are starting to use PhoneGap special HTML5 features and try accessing hardware. If It fails to run then make sure you have logcat view activated in eclipse or try in linux commandline: Read more about Basic PhoneGap Android app from scratch step-by-step