Tuesday, August 09, 2016

Installing MySQL on Windows using a noninstall zip archive

At-least for me, configuring MySQL zip archive on server by reading MySQL team's unfriendly, multi-navigational document has been quite a challenging task.

Here is my simplified version:
  • Download mysql noninstall zip from here: http://dev.mysql.com/downloads/mysql/
  • Extract do C:\mysql folder
  • Under c:\mysql folder you will find my-default.ini file, make a copy of it and rename it to my.ini
  • Open my.ini in notepad, You will find basedir and datadir as commented statements, just uncomment them (by removing # from the starting position of each line) and do the changes shown below
    • basedir = c:\\mysql #installatin directory
    • datadir = c:\\data   #data directory, it can be in some other drive too!
  • Open cmd.exe as administrator and type below commands one after the other
    • Go to bin folder where mysqld.exe file is present
      • cd c:\mysql\bin
    • Below command will initialize the data directory, by reading my.ini file (in our case its in c:\mysql folder)
      • mysqld --initialize
    • Install mysql as background running service in Windows.
      • mysqld --install 
    • Verify MySQL server service installation
      • in command prompt just type services.msc and hit enter
      • and look for MySQL service in the services list, set it as "Automatic"
  • That's it!
  • MySQL server will be up and running and can be accessed over 3306 port
  • Download and install the MySQL Workbench and connect to server as root with no password.

Thursday, May 05, 2016

How a university is saving 2.5 tons of paper every year?

Considering the current environmental imbalances, many non-profit organizations (like The Nature Conservity, SayTree…and many others) around the world working desperately to save plant and trees. It is our responsibility too. We felt starting with universities is the better place to spread the awareness. With this, we also made universities administrative work more manageable and effective.

The story I am going to share tells you how a university quietly worked and stands as a role model by saving tons of paper and millions of rupees of its own and its students.

In the year 2012, VT University (Visvesvaraya Technological University also popularly known as “VTU”) Belgavi (India), has moved its thesis evaluations to online to effectively reduce its use of paper and streamline the process online. University’s this decision made it save several Lakhs of rupees (~ tens of thousands of dollars) every year in paper cost while giving faculty and administrators more direct access to evaluation procedures and results.

It’s been 4 years, 55 post-graduation course are promoted to online system. VTU is using “Examinater” – an online thesis evaluation software, for their Ph.D, M.Tech, MBA and MCA courses. More than 28000 theses evaluated online to date. With paper-based evaluation, several Lakh rupees used to be the postal charges and 2.5 tons of paper utilized annually. Now all this is reduced to zero. This saving is recurring every year. 217 VTU affiliated colleges individually making a huge impact in terms of cost savings, accuracy, reduced time delay and high operational efficiency. Easy to use software “Examinater” is offering an opportunity to transition to the online evaluation of thesis, expanding the environmental savings beyond VTU. Students saved from creating multiple copies of their hardbound thesis and collectively this alone is saving 60 Lakh rupees (~92K USD) every year! Now with Examinater, all dissertation related effort is not just made simple, in fact, automated. The system is successful to encourage faculty to go paperless and respond on-time.

VTU demonstrated how a university can make its own contribution to the environment with the help of Examinater while making sure to meet its peer expectations. This is a remarkable success in terms of securing the future of the tree species and also elevating university's standard of operational procedures.

Its high time now, all universities are requested and encouraged to start automating their processes and go green, go paperless. Isn’t this a pragmatic example of “A penny saved is a penny earned”? We are ready to join hands, are you?

Wednesday, April 30, 2014

Hosting your website? Know the Darkside of Big Brands

Please note, Below mentioned hosting providers are reputed organizations with well established infrastructure. This post is for your information and only intended to keep you informed about their 'policies' that turn evil when you have cut throat challenges.


We heard a lot about Hostgator and we registered one of our customers website with them without giving a second thought. Few months later, during our support phase on our customer's website, we encountered Hostgator feature and support challenges which I think not many experience unless they do some hardcore technical activities with their website.
  1. Many said hostgator has good support track. For us it was always waiting for 20 or more minutes to connect Hostgator support executive for online chat. This can be excused if it is ones in a while, but that was not the case for us.
    • If you are running an e-commerce kind of website or offering online services every minute, then 20 minutes wait time feels like 20 hours.
  2. To connect the database (be it a MS SQL Server or MY SQL) from our machine through database management tools, we first need to white-list our machine IP address on hostgator web admin console, only then you are allowed to connect to database for debugging purpose. It wouldn't have been a problem if white-listing process is quick and instant. Sadly, that's not how it is. The white-listing process takes minimum of an hour!!
    • If you are working on a quick fix and need to run database queries directly, be patient, you need to wait for 1 hour and get blamed from your customer for delayed response.
    • We lately observed, IP address white-listing takes few minutes only if you haven't done it for considerably long time. Your subsequent request make you wait an hour for sure.
  3. Hostgator don't support sending bulk emails over SMTP server through a registered 3rd party provider's server like sendgrid!! You can't connect to 3rd party SMTP server through php or dotnet program to send your promotional or service notification email updates!!
    • You are saved only if your 3rd party bulk email service provider offers REST APIs.
  4. When your database grow bigger (I am not talking about 1TB+, it begins with 250MB), problem of exporting data back and forth to your backup drive also grows exponentially with Hostgator.
    • When we were restoring our database after several database updates/changes from our backup server to hostgator using SQL Server Management studio, Hostgator servers forcefully terminated the connection more than often. You need to try hard with Hostgator database import/export utility only, which is not feasible all the time for a database administrator.
This is it for now, I will update if we encounter new challenges. In case if you have facebook account [ sorry, if I sounded like an age old person:) ], you can check my discussion on this matter here.

As I said, if you are just hosting static website or WordPress site for simple usage, you may not encounter problems mentioned here.


Another "requires no introduction" hosting service provider and as well popular for their amazing discount coupon offers. GoDaddy amazes you with its last minute intelligent calculation while applying discount coupons to your bill. That is sometimes hard to notice. Here is my experience.

One of my .com domains renewal charge proposed by GoDaddy was Rs.710 rupees and magically godaddy already applied 27% discount to it. Now, if I apply 30% offer coupon on top of it, Their billing system considers only 3% discount on it (the magical 27% + 3% from coupon = 30% offer!) That's how calculation works at GoDaddy!! However, when I checked same thing with other service providers they were charging Rs.592 without any coupons which is a competative offer to GoDaddy's discounted price.

You can check discussion thread posted on Facebook group here
I was greatly under the impression that Godaddy coupons can get rid of high cost, but that's not really true most of the time. So be sure to validate before you enroll and pay!

Tuesday, April 22, 2014

Startup Notes: Software Sales and Product Quality

When I visited a potential customer (their minimum monthly business transaction is more than 10 Lakhs) to discuss about our software products and services, they showed interest to spend only 12K for the product worth 70K. I denied to sell our software solution to him. Few days later they succeeded to get one for 10K (from some other startup) for their business. Few months later the same business owner called me back and told me that the software he purchased for low cost, is with many defects and support from vendor is not up to the mark. He also expressed that “I started hating software startup companies. Are you a startup?” For next few days we had several exhaustive discussions and finally we managed to deploy our software solution to the customer with our previously offered price. Now, he is our happy customer.

When I checked, the software vendor who sold software for 10K is a 2 years old startup and he is struggling to get more customers bothering least about his software quality and support model. When I personally had chat with him, he told “It was hard to manage customer at that cost. He was expecting more features for very low additional cost”.

2 Things. Software sale competition and product build quality.

I don't wanted to assume anything about the startup community just by looking at one guy and wanted to do the reality check. I posted a query in one of the popular Facebook groups "Bangalore Startups" where nearly 19K+ startup enthusiasts interact each other.

The query was simple, "How many of you are using Ticket (issue) tracking system to track your work or software defects? If so, which app (online or offline) you are using?"
I expected some good response from fellow members and I was wrong. Less than 10 people took interest to like and comment on this post. (later I made another follow-up post https://www.facebook.com/groups/blrstartups/permalink/736607643028043/ it attracted only 5 people!!)

This made me clear that many StartUps are starting but not really doing things in a proper or matured way!! Many are failing to gauge proper cost for their product but very busy in acquiring new customers (with unhealthy price offerings), pushing their (moderately tested) software to production and later, not just lose customer but also contribute to create wrong reputation about software startup community. If this is the attitude of startup companies then its a serious problem to all. StartUps should not run behind making quick money. Instead they must concentrate on building (if not innovative) stable products and look for long-term trusted relationship with customers.

Now a day, I see not many business owners inclined towards investing more than few thousands for a software solution to manage their business. They already faced many startups before, seen them quoting unreasonably low price and came to the conclusion that software they need to manage their business should not cost more than few thousand rupees. It is those startups who are in hurry capturing new customers are responsible to set such a low pricing expectations.

All startups need some kind of understanding, its like, we know a double cheese pizza with prize tag Rs.500/- is actually prepared by spending less than Rs.150/- but still we can not protest or bargain, the reason?
- The quality of that pizza is soo good we don't want to have any other.
- Though other pizza shops prepare their own flavored double cheese pizza, you won't get it for Rs.150/-, It is still priced nearly Rs.400/- or Rs.450/- if not Rs.500/-. So for any customer who think of having double cheese pizza, never think of getting it less than Rs.400/-. It is those pizza owner's business strategy or you can call it monopoly to maintain a minimum profitable cost and stabilize their market.

So next time, when you are having pizza in-between your busy programming schedule, think about it, should you offer an ERP suite that is worth "minimum" of Rs 50K for Rs.10K just to win one customer? Aren't we diluting our opportunities by offering under-estimated cost?

My request to the aspiring software startup community is please properly value your software product. Work hard to build a brand instead growing unmanaged customers list. Most important thing is do things systematically and avoid unhealthy competition. It is true that if you don't act fast, some one might grab your opportunity. Agreed! but your urgency to make business should not compromise core values.

Monday, March 17, 2014

So, That's it!

2 months back
If you are like me, then there is a list prepared by your mother or wife sitting in your pocket reminding you to purchase some items on your way back home in the evening :) I slightly deviate from my regular walking route and reach the shop where I buy most of the household items. By the time I finish shopping and reach home I am almost dead tiered and never dare to imagine to sit and document how much money I spent few hours back.

1 month back
When Srushti's lab released a private beta version of Expense management application, ServeEase and suggested me to use. I am reluctant to use it until I explored the following feature.

I always suggest my wife to include purchase items to "Expense" section of ServeEase. She does add items marking their price as zero.

So, everyday evening on my way back home, I make sure to check expense section on my mobile and get all items that are with zero price tag. That clearly hints me these are the items to be purchased for the day. As soon as I purchase them, track their cost whenever I find time (like..in the long wait for traffic signals or travelling by city bus) and that's it!

Once in two weeks, I navigate to "Accounts" and check reports section, that clearly present expense and current balance statement to me. End of the day I feel happy because that's all I wanted and ServeEase does it very nicely.

No doubt, it clearly helped me to analyze and control expenses. Saved time, saved some money!

Want to experience the ease of expense tracking? Start now, get it free! www.ServeEase.com

Wednesday, October 16, 2013

Windows forgets visual effects settings on log-out or reboot for non-administrator account

Steps given here worked for me with Windows 7 SP1. Hope you may find it useful.

  • Start -> Run-> cmd (press enter) -> type SystemPropertiesPerformance.exe
  • This gets you the "System Properties" window, go to  Advanced tab -> Performance Settings -> Visual Effects tab and choose "Adjust for best performance" and click OK.
Note: While doing all these UAC doesn't show-up as all changes you are doing will be saved in your logged-in profile account.
Feel free to comment your findings.

Sunday, February 12, 2012

Top 10 checks before buying question paper setting and generation software

When an educator start searching for question paper generation software, he/she will find plenty products claiming they are the best in automating paper setting and generation process. As the number of similar type of software is more, complexity to settle down to one product increases.

Let me put some helping points to simplify software selection process. 
  1. Software price tag is bit more expensive than your planned budget - but wait! Many of us feel that software price is fixed and not negotiable, In-fact, some companies do offer discounts if they are selling product under promotion period. so make sure you check with them regarding the discount. It's a customer right to negotiate, nothing bad about it!
  2. You checked features list, all competing software has all-most all features! Which one to pick for analysis? -Really, this is a puzzled situation. In that case, Look for the product screen shots or ask for a demo. Take a scenario, such as, how to compose a question paper pattern. Every software has its own way to set a question paper pattern prior to generate question paper. Poorly thought software design will offer you too many confusing options and rise a need of getting trained. Some old-fashioned software will have series of buttons lined up in the bottom or top of  screens and you have no clue what to press and when. Chose the one which is simple and require no or very less training to use. The better software solution should give you the feeling of simplicity and easiness.
  3. Check for online blog or documentation about the software -. Whether you read them or not! This is still an important aspect to look for (seriously, I never read windows help [which pops-up when you press F1 key] or windows product blog, in these 12 years of my time with windows computers!) Still you should look for it because, it defines 'on-line presence of the company' and its dynamics. This directly influence the product quality, future developments and companies sustained support for your current and future needs. You should be purchasing product from a dynamic company and not from the dull one. Isn't it?
  4. If software was built on or before year 2005, then wait! the internal design can't be well thought to support latest internal updates happening in Windows. In another 3 or so years, you will start using Windows 8 operating system and as you can read here. Microsoft's upcoming operating system Windows 8 with WinRT file system (now in developer preview edition) expected to break many traditional programming approaches like accessing database (this is where all your questions, answers..etc gets saved) and other application behaviour aspects. So the old-fashioned software you may wish to purchase for relatively less price may stop working at that time. So keep this in mind and look for software solutions built using latest technology from Microsoft or Sun/Oracle..etc.
  5. Look for the quality -. There is no different analogy than differentiating well branded cell phone (like iPhone, Nokia, Samsung..etc) with a local make (usually cost less) mobile phones. The evaluation of quality considers how does product look, function and your overall feeling after using it for some time. Following same analogy, download demo version of the software, check whether you are able to use it without much confusion, how easy to operate it? are screens good-looking? by the time work on all features in the demo software exploring yourself, you will definitely have firm opinion about overall quality of the product. Be cautious about average quality product, like local make mobile phones, they run good for 1 or 2 years and later break for operating system latest updates or fail to satisfy your varied needs.
  6. Is the software customizable enough to meet your current and future needs? - Let’s say you may want to allow space to write answers in the question paper itself or how the question entry area helps to enter a table data...try to remember your most rare need and figure out how software is providing solution to it. The most effective software does it in a simplistic manner and re-uses your existing knowledge of computers, instead telling its own way of doing it. Remember! if software is providing many options for setting many things, it will be a pain in the long run. You may either forget how to use all those or get confused after few months. Keep it simple, stupid yet effective.
  7. It is always good to move to cloud based computing compared to traditional private database server - Any software providing this feature out-of-the-box should be considered with high priority. Future of internet and computers going to change the way we are leading life now. You may go on vacation but wanted to tweak some questions in the middle, your cloud database will be available for you all the time anywhere in world.
  8. Is Software Company having open system to showcase how their future/updated version of software is coming along? It could be a forum like website or product features/defects tracking website. Whether you buy updated version of software or not. You need to check this to gauge many things like,
    1. It showcases company's commitment and quality of deliverables about the product. Remember any company working systematically will definitely provide an online system for you to review their product development progress. If there is no such system, there is some catch and you need make cautious move before progressing to purchase software.
    2. You can review forth coming product features beforehand.
    3. You can suggest or post your problems to the website and track its progress.
    4. It ultimately shows the company's technical competency and makes sure you are not confused by a middle-man who is pretending to be a real-software solution provider. Don't you like to buy product from best company? You will for sure!
  9. Think about security - Everybody look for user login accounts are allowed to create, subject wise restriction is possible or ability to track user activities. Not just this! Consider, if the software is providing export of complete question bank to a word or excel file or a user is allowed to take print out of all previously generated question papers and there is no way to restrict/lock it? In the beginning, some features may appear sensational, but they may be offering easy way to steal all your data at one shot! So look for usage wise security breaches and how they are tackled in the software.
  10. Compatibility and setup challenges - You may upgrade or degrade your operating system or may apply some service packs to the existing one. Is the software compatible to all those variations? if you prefer to test on different operating systems, you can download free virtual machine software (check link below ) and test on it. Check that data backup/restore and setup related activities are easy to do.
Virtual machine free software for download: https://www.virtualbox.org

Windows 8 WinRT file System breaking changes and discussion: http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/380b4b7b-72e2-4435-b7f7-0d2afca4eac0

In the interest of guiding educators.

Thank you!

Visit our product page: Quick Quest - world's most advanced and easy to use question paper generation software for any sized institution.

Monday, November 28, 2011

In This World - 17

"The true leadership is not given, it should be earned and consistently demonstrated."

"A true leader creates more leaders and feared ones create blind followers"

Friday, November 18, 2011

Hiring a Super Programmer?

When it comes to programming, I noticed most of the super programmers share similar attitude and thought process. I started identifying similarities whenever I took interviews.

After meeting 3000+  potential candidates (thanks to all my previous companies choosing me as interviewer), I dared to have a quick points to spot a 'Super Programmer' from the pool of programmers.

When I shared these points with my colleagues, they found it useful during their interviews.

Please note

  • These points are strictly valid for 'Rock Star Programmers' only. If you apply these observations to a good programmer, you may loose him. 
  • I always don't follow these points very strictly in interviews as there will be many other aspects to consider, However these can just be used as indicative pointers if you feel good. 

So here it goes,
  • They may be little nervous in the beginning. When you ask them about their interesting project, their eyes glow and for a moment they just forget where they are and completely immerse in explaining the problem, how much they were amazed, their explorations and implementations.
  • They have habit of knowing all latest happenings in their interested technical area. That means they are closely following beta and release candidates as well.
  • They read lot of blog posts, tech articles and most of the time own a technical blog. They have good bunch of posts on technical articles or pointers in their blog.
  • Even if they don't know the answer, they logically think and almost get through the problem. Their hands don't shiver when writing code. No matter even if the syntax is wrong.
  • They always try to generalize the approach and try to make it reusable.
  • They are fanatic about browsing the project code-base and finding out what is best in it. If something is badly designed or written, it disturbs them and try to revamp/fix it if permitted. They will be proactive in doing it (provided such an opportunity is given).
  • They have earned good reputation points in technical forums. That is more important than having bunch of certifications.
  • Their resume contains bunch of memory profiling, performance profiling, code review tools and many popular open source frameworks used (like Caliburn..etc) in their project and few of those is introduced in their company projects because of them.
  • Ask which piece of code in their previous projects liked a lot and which was not. It indirectly tells us their level of understanding about technology.
  • Observe your conversation with them. As you know, the developers conversation context is bit different. Are they catching it quickly? your such conversation should go with them smoothly. For example, I usually ask what version of Dotnet you are using and many reply, its 2010 or 2008! First point, They are best Visual Studio.Net IDE users than Dotnet programmers. Second, they are not understanding the context. I have asked the version of Dotnet framework not the IDE. If you are explaining too many things during the discussion, then there is a problem.
  • When you give them a paper and pen and ask to write a program, check how much space they waste. 2 things to notice,
  1. If they fill A4 sheet page to write 2 small programs (reverse a string and looping through ArrayList having different type of objects) maintaining bigger inline space, then they can't think more on efficient usage of computing resources also. Even if they think, it may be their simple programming habit but not something coming out from geeky mind. This is more inspired from 'you will work the way you really are'.
  2. With minimum inline spacing, even if they fill A4 sheet writing lot of code (without striking unused ones) then, they are dangerous programmers. They can explain the logic on the same day it is written and anytime in future you need to pray for God to know about the hidden logic.
  3. Why there should be a 3rd point when I said only 2.
  • Ask them very basic questions (If you have to implement AJAX response/request what objects do you use in Javascript) and see how detailed and thoughtful answer they give. Whats more interesting is how deep they delve and present different aspects of it.
  • They have either contributed to one of open source projects (on CodePlex, SourceForge,gitHub..etc) or have hosted their own.
  • They have published some articles on technical article sites (like CodeProject...etc)
  • Majority of their posts on twitter or facebook speaks about their serious technical explorations than 'I ate this', 'been here..' or sharing funny cat videos.
  • They have list of achievements in the resume and may not be a certified professional. 
No matter even if candidate don't stand true for all above points. Most of the time we believe our senses and take the decision (and that is usually proved right.)

Well, this is my list. Do you have some quick points? Feel free to share here.

Thanks for reading!

Saturday, November 12, 2011

Openness with Free Web Fonts

If you want to design a webpage with stylish font. There are few important things to consider before using graphical text images.
  • If you prefer search engines bring traffic to your web page, it has to be Search engine friendly, as of  now crawling engine ignore text written in images. (BTW, can search engines improve to extract text from image and index? like Quick Quest does ;)
  • The font should be rendered and displayed consistent across multiple browsers.
  • When viewed through mobile browser, it should wrap (as normal text do) to fit the small screen.

Its now old fashion to choose the most common font (either Times New Roman or Arial, that are for sure exist in users computer) and design the page accordingly to stay safe.

Things have changed, so the approaches.

To respect above points, HTML font embedding became essential need to design impressive web page (SrushtiSoft.com home page is using font embedding. Its live now!).

Back in 1997, Microsoft released Web Embedding Fonts Tool (WEFT) which allows to create font objects (.eot) file from our favorite True Type Font (TTF) and refer it in CSS. That's all! Any page viewed in Internet Explorer started rendering our favorite font even if it is not present in user's computer.

That's really cool.

As usual, Microsoft restricted this openness only to IE browsers and that made many web developers to ignore this effort silently. (However, Microsoft is still active on WEFT initiative and anytime may strike back)

So there comes Google with free open source Web Fonts! http://www.google.com/webfonts.

As of now there are 291 free open source fonts for embedding. With each font, Google provide a quick guidelines on how to use in a web page.

Your jaw drops when you see Google giving just 2 lines to integrate web fonts!

SrushtiSoft home page uses one very decent font out of 291 Google web fonts. We tested it over 100+ browsers on Linux, Windows and Android platforms and very few browsers failed to render.

I sense strong future of web fonts as they make web pages to render without mandating users to install required font. For a web developer, there is so much of relaxing factor in it. :)