QR Coder – Version 2

This is an update to my original QR Coder browser bookmark script. It’s been a while, and the Google Chart APIs I was using for this stopped working few days ago.

This is my daily use app, and unfortunately there’s still no way to easily transfer text info from one device to another without going through cloud.

In this update, I am now using GoQR service by FoundData. It’s pretty easy to use, and the service offers APIs to encode and decode QR code. Which is awesome. There’s also web form where one can generate QR codes.

For this update I’m breaking QR Coder in two parts.

QR Link

QR Link generates a QR code of the page you’re currently on. So you can share it with another device.

javascript:(function(){function QRCoder(){var u=window,t=document,n=t.createElement("div"),r=t.createElement("img"),i;r.src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data="+encodeURI(window.location),n.id="QRCoder",n.style.padding="50px",n.style.border="1px solid #f00",n.style.textAlign="center",n.style.backgroundColor="#ccc",n.onclick=function(){t.body.removeChild(t.getElementById("QRCoder"))},i=t.createElement("div"),i.style.fontFamily="serif",i.innerHTML="tap to hide",n.appendChild(r),n.appendChild(i),n.style.zIndex=6999,n.style.position="fixed",n.style.top="10px",n.style.left=u.innerWidth/2-130+"px",t.body.appendChild(n)}QRCoder();})()
  • Copy all the code shared above
  • Its one line of code, no line breaks
  • Bookmark this page, and edit the bookmark
  • Change bookmark’s name to “QR Link”
  • Paste the copied code in bookmark’s location / URL field
  • Save the bookmark. That’s it!

QR Text

QR Text is simple, and I’ve been using it in this form for long time. This is for quickly generating a QR code for your own custom text. Say, you need to make a call to a number on PC? no problem. QR Text, tel:+18001234567.

Or anything else text based, it’ll quickly make a QR code of it, but you need to be on some website. As on some browsers’ home feed doesn’t let this script work.

javascript:(function(){function QRCoder(){var u=window,t=document,n=t.createElement("div"),r=t.createElement("img"),i;r.src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data="+prompt("Text data", ""),n.id="QRCoder",n.style.padding="50px",n.style.border="1px solid #f00",n.style.textAlign="center",n.style.backgroundColor="#ccc",n.onclick=function(){t.body.removeChild(t.getElementById("QRCoder"))},i=t.createElement("div"),i.style.fontFamily="serif",i.innerHTML="tap to hide",n.appendChild(r),n.appendChild(i),n.style.zIndex=6999,n.style.position="fixed",n.style.top="10px",n.style.left=u.innerWidth/2-130+"px",t.body.appendChild(n)}QRCoder();})()
  • Copy all the code shared above
  • Its one line of code, no line breaks
  • Bookmark this page, and edit the bookmark
  • Change bookmark’s name to “QR Text”
  • Paste the copied code in bookmark’s location / URL field
  • Save the bookmark. That’s it!

Oh yeah, you want the link to this page as QR code, here you go!

qr code

This works on latest Firefox, Edge, Chrome and mobile versions of these browsers too.

Do let me know how you use it and if you have any feedback.

Windows 8 Tip: Making All Apps Tile and Shortcut Real Easy

I recently upgraded my main work machine, Dell Studio 1558, to Windows 8 Pro. Only had one issue, where my ATI display driver was making Windows 8 Pro to crash after few minutes into the start screen. Other than this no issues. Smooth sailing so far :)


There’s one thing that I realized after few hours of using Windows 8 start screen, the All Apps option is hidden under a right-click contextual menu. And I was accessing it a lot of times during the day.

I thought there might be a tile that I can place on the start screen, and can just place it on there and All Apps will be just a click away as compared to right-click then click All Apps button in lower-right corner. I’m a lefty, and the start menu we all are so used-to made me look for more apps button in the lower-left corner all the time :D

After some research, I found that there’s no built-in All Apps tile in Windows 8. So I made one myself. I don’t exactly remember where I found the snippet, but all credit goes to whoever found it. I just searched for it :D

All you have to do is make a New Shortcut on Desktop, and set its Target field to:

%windir%explorer.exe shell:::{2559a1f8-21d7-11d4-bdaf-00c04f60b9f0}

And Start in field to: %windir%. You can change the icon as per your liking of course. Click Ok to create the shortcut on your Desktop.

Now, right-click on this newly created shortcut, and select Pin to Start. Now you have a nice tile that you can just click to access all of your installed applications. Should be great for touch screens as well.

Please note that this is not a perfect hack, there’s a small visual hick-up, as if you click on tile, it will take you to the Desktop for a second, then back to All Apps list in modern UI. But it works :D

You can also download this shortcut file I created for myself, so you don’t have to go through all the hacking stuff ;)

Download: AllApps_Tile_Windows8.zip

// chall3ng3r //

Reinstalling Client for Microsoft Networks in Windows 7

I recently got into a problem where I by mistake uninstalled “Client for Microsoft Networks” option for my Dell notebook’s WLAN adapter.

The main issue which I was having was that the network icon in system tray was always showing as disconnected, even if I connect to WiFi or plug a LAN cable. It always shows disconnected, which was annoying.

So, if you happen to get similar issue in Windows 7, just open Device Manager from Control Panel, and select the WiFi network adapter and Uninstall it. Do not check “Delete the driver software for this device” Option.


After this, from Actions menu in Device Manager, click “Scan for hardware changes”, which will reinstall the driver back from the drivers’ cache, and will also fix the network icon issue.

Now back to the original issue at hand. To reinstall the Client for Microsoft Networks, you first need to open the Properties window for the network adapter.

Click Install, and select Service, then there will be only option for “Flash and Printer Sharing Service for Microsoft Networks”,  select it to install.

Now go back to same window and this time click Install and select Client from the list. You will get option for “Client for Microsoft Networks”,  select it and install. That’s it!


Now if you are connected to network, disconnect, and connect again so you can start accessing the file sharing service on your LAN.

I hope this will help someone in need :)

// chall3ng3r //

Android Player for BlackBerry PlayBook – Virtual Keys

You might already know Android Player for BlackBerry PlayBook was leaked recently. It looks like pretty much intentional leak just to keep in the news while they work as slow as they can to complete it.

Anyway, I found the required files on CrackBerry forums and gave it a try. At first couple of attempts, after waiting for minutes I got some JAVA socket exception errors, but on third try, it went all fine.

The first thing I did was setup my email account so I can finally use PlayBook for some professional use, rather than just watching movies in spare time.

I was able to sync my Google Apps email, calendar and contacts easily using Android Player for PlayBook. However, there are not buttons to navigate. There’s a left to right swipe gesture on bottom bezel which works as Back command and swipe down for Options command on Android.

later, I explored the sys.android.bar and found there are actually "Virtual Keys" as PNG files for portrait and landscape orientations. So, I took a screenshot of Browser running in Android Player and Photoshop-ed the Virtual Keys PNG image on the the PlayBook screen just to get the idea how it’s gonna look. See for your self in bellow screenshot.



Looks nice, and it will be quite easy to navigate within Android Player with these standard Android buttons.

I think this is a great idea to allow Android apps run on PlayBook, as we have already seen how slow RIM is coming up with native email client, which gives us the idea how future updates going to come.

Just couple of days ago I was asking from a local mobile gadgets shop to exchange my PlayBook with a Samsung Galaxy Tab. Good that I didn’t went all the way to exchange it :D

// chall3ng3r //

PayPal Why You Do This To Me?

The story begins in mid 2008 when I was on a 1 year contract position, working as Mobile Specialist in Germany. I opened up my first ever PayPal account and happily linked it to my German bank account. Everything was working flawlessly.

I made few purchases using PayPal, and also I managed to sell my Nokia N96 to get Nokia 5800XM (Nokia’s first touch input device) using eBay, and received payment of it in my PayPal.

When my contract was over, I started to roll my stuff, and found out from my German bank (Dresdner bank at that time which was in-transition to merged with Commerzbank) that I can keep my account open and use it from overseas via internet banking. I was really happy, that I can still use PayPal and my future European clients can pay to my German account easily.

I headed back to my homeland Pakistan in May 2009, and kept using PayPal for small payments for our web hosting services and domain name renewals. My same PayPal account is also used to accept payments from 99designs.com where my younger brother Najam has won some logo design competitions.

As some of my fellows in Flash and mobile developer communities know that we have recently published couple of apps for BlackBerry PlayBook, and we got quite a success from them so far. The payments of App World are also sent to my PayPal as it’s the only option for App World developers.

In last week of June 2011, I received an email from PayPal that my yearly money receiving limit is reaching (2500 euros) I was at 1800 euros from (August 2010). They asked my proof of identity and proof of address. I sent them a copy of my Passport and my recent German bank statement which shows my current address.

The address didn’t match the address in PayPal profile, as I never updated it in PayPal because Pakistan is not in countries list. So, I tried to add the address in PayPal profile and sent them the statement again. I called the PayPal (Ireland) support as well, as they deal with German PayPal accounts. They told me that I should wait for reply via email.

Now, I got a reply, that says:

After reviewing your PayPal account, we’ve determined there to be excessive
risk involved and would like to begin parting ways in a manner that is
least disruptive to your business.

I logged in to my PayPal account and found one additional note:

This limitation cannot be appealed.

Googled it and found that this is it. I cannot use PayPal anymore. Even I have a German bank account which legally allows me to use it from anywhere, and I am providing my proof of ID and correct address, PayPal don’t want to use my account anymore. There were no complaints filed against my account in past. It’s a clean PayPal account with limited number of transactions.

We recently planned that we exclusively target PlayBook device for our current development as there’s really lack of quality and good looking apps and games. Making our chances more than double compared to already filled iPad and Android markets.

We have been forced to stop here. It’s an unfortunate situation. PayPal for some reason does not support Pakistan, while they support many other Asian and African countries which are almost equal to or even worse than Pakistan’s political or stability situation.

I would have never used PayPal more if App World allowed to directly send funds to my local bank account. For now, I am thinking of asking a German friend who can accept my payments from App World for a month or two, then we are going to pull back from App World until they start paying directly to bank account.

I think it’s time that I start finding a job overseas again :/

Update “€œ Aug 2011

Okay, my PayPal account is now permanently blocked. PayPal opened it for 3 days again to let me withdraw my remaining fund to my linked German bank account. Now I’m done with PayPal.

I got the good news from RIM as well, as they agreed to offer me direct transfer of funds to my bank account. They sent me a contract, and it’s currently in progress of being activated.

We are now back on AppWorld development, and have couple of apps under development to the PlayBook. Thanks for RIM for listening to us.

// chall3ng3r //

Why Adobe Flash Player 10.1 is not 11.0?

flashplayer Well, it seems quite late to ask this”¦again, but I’d like to know why?

This update of Adobe Flash Player is huge, and is also the first version from Open Screen Project. It’s super fast, it’s mobile optimized, it’s multi-touch enabled, it’s everything Flash Player 10.0 was not.

I don’t see a reason why Adobe don’t want to call it version 11.0? Anyone else want to know or maybe know why?

Update: I already went through Emmy’s post regarding version numbering. I just think this is a major update, so the change in version number should be major?

// chall3ng3r //

Biggest Flash video player mistakes!

It’s not just me who is stuck on really crappy ISP. I know there are millions of users like me around the world :)

youtube  yahoo_video

bliptv  hulu

viddler  vimeo

I would like to highlight some biggest mistakes which almost every other popular video sharing service make. Yes, that includes YouTube, Vimeo, Google Video, Yahoo Video, or just think of any major service. Just take a look on above screenshots, and try to notice what’s missing?

I know you’re wondering, what are these mistakes?

  • Mistake 1: A simple “Stop” button. Can you believe that? There’s always a Pause / Play button and Scrubber, but no one ever cared about adding a simple Stop button.

    What this button should do? Well, stop the video and break the damn connection!

    If you are on a crappy connection like me, and you clicked to play a video, there’s only one way to stop it sucking all the bandwidth, refresh entire page. Flash Player does offer APIs to close an ongoing stream, but no one uses it.

    Life can be really easy for users on slow connections if there’s one more button to Stop a video in the embedded player.

  • Mistake 2: It’s just my guess, but I think it’s correct that developers who program these Flash video players are on company’s corporate high speed networks. So, they click the video and it plays. What about users on slow connections?

    I don’t think they even bother to test the video playback on slow connection. Flash Player offers APIs to set the video buffer, so the video is buffered for few seconds for smooth playback experience. But again, not used. Or if used, not optimized.

    It’s even worst on Adobe own website, where I noticed videos start playing as soon as few bytes are received. The video plays choppy and on homepage intro video, there’s no Pause button”¦ just imagine how bad impression it makes.

  • Mistake 3: Tiny player control buttons. As there are more and more touch based devices in hands of users, watching videos on these cool gadgets is increasing. But what I found that designers of Flash video players do not think about if the same player is used on such device.

    For example, on my Nokia N900, a cool Maemo Linux based device which can play videos from most of the popular video services, but the controls are not optimized for touch input which makes them hard to use. And really stupid things happen, and user end up closing the video window.

    Well, the developer can detect the device and render different set of controls. But I think the easiest option would be to make one design which fits the bill for desktop + touch device optimized user controls.

  • Mistake 4: I really hate when I try to quickly pause / stop a video by clicking anywhere on video, which opens a new window to service’s website. As the control buttons are already too small, the general sense is to pause the video when clicked on it. Some services do avoid this mistake, but most services just want the user to get to their website, and this seems to be the easiest option for them.

    It’s worst on small screen touch input devices, where user have to do 2-3 tries to actually pause a video. Really bad user experience.

I can just hope and wish my this blog post somehow gets to the actual designers & programmers or decision makers of Flash video players for these video services. And also they try to fix these mistakes.

Do you think there are any more mistakes? Post them in comments.

// chall3ng3r //

Some updates about SWF2Go Pro

Just wanted to share some new updates regarding SWF2Go Pro.

  • SWF2Go have now social media presence as well. You can become a fan of SWF2Go on Facebook and follow on Twitter for latest news and updates.
  • We have published a small guide to make SWF2Go v2 made SIS files compatible with S60 5th Edition devices. Read it on SWF2Go wiki
  • We are now running a special holiday season sale. Instantly save 20$ on SWF2Go Pro v2.0. So, what you are waiting for!!!

FYI, we are working on an update for SWF2Go which will be available soon. Stay tuned!

Happy holidays and have fun!

// chall3ng3r //

For last few months my friends were asking me, what me and my team at Orison Technologies is doing? Well, today I’d like to share what we’ve been cooking for last few months.

buteek.com - Home

buteek.com “€œ A new brand and webshop for latest fashion & style. The store currently offers eastern and western designs for young women and ships all around the world. Take a look and let us know your thoughts about designs, prices and overall experience.

BTW, buteek.com is running exclusive discounts to celebrate its online launch, so get busy shopping!

// chall3ng3r //