Run Android Apps on Windows PC

Don’t ask me why I was searching for these but I found a few handy platforms to run android apps inside my windows.
BlueStacks and WindowsAndroid aka Windroy are such free frameworks.
Of these WindowsAndroid lets you run Android 4.0 (Ice Cream Sandwich) as a native application on your on Windows Vista, Windows 7, or Windows 8 machine.
YouWave is another such option albeit a paid one even though it lets you try out the framework for 10 days.
All of these softwares basically lets Android run on Windows PC.
In searching for these I also stumbled upon another interesting project called Android-x86 Project – Run Android on Your PC.
There’s of course the option of running Official Android Emulator inside Windows by installing the Android Developer SDK for Windows. Google’s Android software development kit (SDK) provides a free Android emulator, although it’s targeted at developers. You can run the latest version of Android with this method, so it’s a great way to try out the latest version of Android if you have a device that’s stuck on an older version.

First, you’ll need Java installed. You can then download the SDK Tools from Google.

Genymotion is another of these emulators. The Beta version is the evolution of AndroVM open source project and will be available in June.

These apps should help you in app testing and presentation purposes.

Have a check yourself!

Custom software development company culture I admire at Kaz Software Ltd.

I started working in a company called Kaz Software Ltd. from 15th September 2005.

I switched my last company at a time when I was one of the best employees at One World Ltd.  One World was also a custom software development company in Bangladesh and it gave me everything one would dream of. A senior position from where my views and ideas were appreciated and incorporated into the company culture. The company was within the vicinity of my house in Mirpur 2. It was so awesome having the company that close to my home that I should mention an example. I used to come to my house every day during lunch time to have my food. After having the food I usually took a nap and then head back in a 5-minute-rickshaw ride to my company.  Handsome salary was the least of the benefits  I can mention. As a software craftsman money was the least enticing of the attributes I looked for in a company. One World fit into my conception of an ideal company where I always used to have a say.

Then came the day Wahid bhai, the current CTO of Kaz Software Ltd. proposed me to join his elite batch of software craftsmen. I didn’t even have a second thought. You would be asking why?

I heard from a common acquaintance that Kaz has an excellent team culture full of fun. At the same time, it is replete with software engineering challenges for which I always longed for. One could say I was a big fish in a small pond previous to joining Kaz. Once I decided to join Kaz, I accepted that I would be a small fish in a big pond considering the software engineering challenges and the level of intellectual ability people in my working group possesses  I was quite comfortable at my previous company not only with the ambiance and facilities but also with the technical challenges. With due respect to my previous company, I knew I would be entrusted with bigger challenges at Kaz but ones that could shape my software engineering progression. I immediately jumped ship to join a group of intellectuals which would not only define my career down the line but became a catalyst to broaden my general intellectual capacity. Truth be told – this was because I was always working with a group of intellectuals who were intellectually at a higher level than me and I had to be on my toes all the time to answer their superior questions and ask superior questions to them myself. This in a way reshaped how I used to think and broadened my overall outlook to life in general by making me more focused and alert to the subtlety of situations.

The first thing that struck me most about the culture of Kaz was that there was no invisible divider between the senior most person in the company like the CTO and a junior person in a sense that the junior person was allowed to argue logically with the CTO in a brainstorming session. In fact, the culture not only allowed it but encouraged so partly because a junior person could come up with a fresh idea challenging the one a senior person conveyed. In short there was no invisible wall between a senior person and a junior person.

The second thing that caught my attention was that every person’s view was taken into cognizance regarding anything and everything. This in a way relates to the first point I made that there is no hidden barrier among the people working under the same roof. Hence, the company culture quite literally fostered an environment where mutual respect built up automatically owing to giving value to what a person has to say. When one knows that one can challenge the ‘status quo’, that person is bound to feel enlightened and have a feeling that people are always willing to listen in order to improve upon things. It also teaches everyone that everyone should have an open minded approach towards things. This is a big deal in software engineering because, IMHO, having a fixed or stereotypical mentality would not only kill off all the potential in a software developer but it would also impoison the entire environment. In short there was a culture in place which discouraged egoistic or narrow minded thinking. Better still, the culture tried to inculcate positivism and broad mindedness by teaching one to listen and accept another person’s idea. This, I feel, is a big ingredient for nurturing innovation in a culture which Kaz successfully managed to imbue in a person.

The third aspect of the culture of Kaz seemed to promote the motto “we come to the office for having fun first then work.” Everything around Kaz was centered around having parties and celebrating even the smallest success. Beginning with impromptu ‘Pizza parties’ thrown for everyone in the team just because one developer solved a critical problem in an efficient manner to team parties which took us to far off and adventurous places like Darjeeling, India. Parties for people joining our company or leaving the company. It would be injustice if I don’t mention that there were more than one guys to gave multiple parties for joining because they left the company and then came back. Some even left and came back twice! Then there were parties for the most trifling of things like being late in scrum. We used to aggregate a nominal sum as fine in a piggy bank and then have parties after a point of time. There were also parties for coming late in certain meetings like team meetings, seniors’ meetings etc. There was one point when we used to have fine system setup in our company whereby you would be fined for the most unthinkable of things like putting your coffee mug in another person’s table. Those days it required the caliber of a supreme court lawyers to decide what could not be categorized as a fine such was the intricacies and vastness of the laws of fines! The most anticipated party was the “anniversary party” for our company whereby we used to go to a new and better place every year for having fun with our colleagues in a non-work environment  This was a big plus from the company’s perspective because developing a rapport with a fellow worker in an environment which doesn’t stifle you to be ‘official’ sheds off all the distances that could develop in a working environment.

The fourth aspect that I can mention is an ever upward curve created in the learning culture for everyone. We had weekly seminar system where one person basically gives a presentation to the audience on a topic which might or might not be related to the technologies he/she is working on. We also had what we called “Kaz School System” where a crash course type lessons would be held on topics like Software Development with ASP.NET, Design Patterns etc. Then there were workshops on topics like Refactoring, Code Smells etc. If you visit Kaz, you find all the IPs (Interaction Points) of Kaz overwhelmed with posters and writings on good practices or motivational sayings etc.

The last aspect but certainly not the least one that I could mention is the culture of sports at Kaz. We play regular cricket matches after our lunch within the vicinity of our office premises. Some could also be seen playing ‘Carom board’ game in the veranda at the same time. When it’s in season for playing a game of Badminton, people would be seen vying for a chance to play.  If that doesn’t astound you then this sure will. Every year we play cricket tournaments like inter software company cricket leagues or corporate cricket leagues. Then there happens a regular bout of KPL (Kaz Cricket League), KBL (Kaz Badminton League), KCL (Kaz Carom League) interspersed in the year. Few facets of these leagues are – buying teams by members in an auction before the tournaments start. Betting is also an attractive even which takes place before every match where one would basically need to bet on a team to win by putting certain amount of money. There is a betting syndicate in place too! Then there is handsome prize money to be won for every match or tournament. In short, sports is an integral part of the culture for Kaz. All the lessons that can be learnt in a sports field can be incorporated into life in general. Hence, I believe this very cultural aspect of Kaz puts its employees in good stead for meeting the challenges head on.

If I have to summarize everything I have written thus far with a phrase, I would have to say the culture of Kaz is one of ‘passion and fun’. In more ways than one, Kaz is a breeding ground for creativity and a den for the inquisitives.

In narrating the cultural aspects of Kaz as a good custom software development company in Bangladesh, it is likely that I might have missed some points. If you feel interested after reading my piece, I would request you to have a look at a page of Kaz’s website which is dedicated to the company culture it so fondly embraces and promotes.

Here’s the Company & Culture page from Kaz Software Ltd’s main site.

SQL Fiddle – Online SQL Database Testing Tool

Many of you might have heard the name of JSFiddle for testing JavaScript code and using different JavaScript libraries like jQuery, MooTools, Protoype, YUI, ExtJS, KnockoutJS, AngularJS, Dojo etc.

It basically gives one an editor each for writing HTML, JavaScript and CSS code. One can also view the output right there in a separate section. One may even choose to validate the JavaScript code using JSHint to check JavaScript code quality with JSLint validation.

Now there is also a SQL counterpart named SQL Fiddle. It is basically a tool for easy online testing and sharing of database problems and their solutions.

Using the tool one can build database schema and run SQL within the tool to check the output. Isn’t it wonderful to have such tools in a developer’s arsenal? Enjoy!

Use dummy SMTP servers for rapid development

One heck of a time saver for devs to test email sending.No need to go through the hassle of configuring a full featured SMTP Server in your box. Just download this tool below and view sent emails from the comfort of your desktop:


Here’s the description off the site itself:

Windows 7/Vista/XP/2003/2010 compatible dummy SMTP server. Sits in the system tray and does not deliver the received messages. The received messages can be quickly viewed, saved and the source/structure inspected. Useful for testing/debugging software that generates email.

Papercut is another of these simplified SMTP servers.

Google is killing its RSS feed component Google Reader!

What a tragedy!
Firing off my browser today like most days, I was naive enough to believe that today was like just another day. Unfortunately when I tried to access Google Reader, I was confronted with a message in the Reader View like this:
Google Reader will not be available from July 1, 2013

Google Reader will not be available from July 1, 2013

And then I started to realize that world will be never be the same again for me! Words like retire, offline, shut down, discontinue, close was flying over my head just as they do in cartoons. Just kidding 🙂
As part of her second spring of cleaning Google just announced that she would be Powering Down Google Reader on July 1, 2013.
What a tragic end that would be for poor folks like me who start off their day’s activity by reading the rss feed items off the Google Reader 😦
Maybe we shall have to get used to using desktop apps like FeedDemon or web apps like Feedly for they can seamlessly import Google Reader’s feeds.
I think we all the know the main reason behind Google‘s decision to take this measure as it’s trying its utmost to publicize its very own social media weapon Google+.
If you are among those who use Google +, here’s a good post detailing How to Survive the Switch from Google Reader to Google+. Unfortunately I am not among the fans of Google+ yet.

Astonishing resort being built in Srimongol, Sylhet

A 5/6-star quality resort named Grand Sultan Tea Resort and Golf sprawling over 45 bighas is being built in Srimongol next to Lawachara National Park at Moulvibazar in the district of Sylhet of Bangladesh.

The total investment required to build the resort is estimated to be around Tk 100 crore.

It’s supposed to open around the next tourist season this year (Probably after July).

The resort would have around 210 rooms, including 20 suites and 5 presidential suites.

A night’s stay at this hotel might cost you around $100.

Excursion & Resorts Bangladesh Limited is building the monumental hotel under the leadership of its chairman Khwaja Tipu Sultan.



Future of Web – JavaScript all the way!

Now-a-days one could call “Database API” using JavaScript (CouchDB). With the rise of Server-Side JavaScript (SSJS)
, one could write server side logic of a web application using JavaScript (NodeJS). One could write client portion of a web application quickly (ExtJS/jQuery UI) using fast/performant (jQuery) JavaScript. One could also use frameworks such as Knockout.js/Underscore.js/Backbone.js to assemble together a MVC/MVVM/MV* style web apps in quick time. One could even develop mobile applications using JavaScript (Appcelerator Titanium).

Rich two-way binding based on libraries like Handlebars is the norm these days.Frameworks like Meteor are also on their way to the developer toolbox to solve concurrency & scalability issues and let the developer only be concerned about developing what they want in a high level way.

Not to mention the beast that is the Html5 as it holds a lot of promise for the future. W3C Web Workers is coming onto the scene as a form of “threading” and supported in the ECMAScript Edition 5.

Html5 offline client-side storage features like File System API,
Indexed Database API (IndexedDB)Web SQL DatabaseWeb Storage and
Application Cache are also JavaScript based not to mention other third party
storage solutions like SQL.jsTrappistDBPersistJS.

I know talking about Html5 WebSockets would entail another post per se. but the least one could say about it is that the future of communication in web world is persistent full duplex connection. And that can be achieved with WebSocket.

Then there is the small matter of Emscripten by which one could Port a C/C++ Library to JavaScript (xml.js). So you can imagine that the “sky should be the limit” with what could be achieved in JavaScript alone.

There are number of up and coming libraries for doing tasks in JavaScript which up until now was considered only a “server job”. Pdf.js is one such HTML5 technology experiment that explores building a faithful and efficient Portable Document Format (PDF) renderer without native code assistance. Zip.js is another JavaScript library to zip and unzip files on the client-end. JS-Crypto is a collection of JavaScript crypto functions to call from the front-end.

Is this how the future would shape up to for the Web 3.0? Is JavaScript in every layer in an N-Tier Architecture i.e. Presentation Layer, Business Layer, Data Access Layer a viable solution? I would love to get your view regarding today’s JavaScript in “every sphere” based development paradigm.