Thursday, March 27, 2014
The Joy of Unix in Windows: Cli Tools Bundle
Monday, March 17, 2014
Sunday, March 16, 2014
RESTClient 3.3 Released
- Project home page.
- Release notes.
- OpenSource download location.
- Purchase signed Mac build.
Saturday, March 15, 2014
Offsetting the cost of OpenSource development
There is a cost associated with OpenSource development. The cost I pay to maintain the domain, the hosting cost, and most importantly, the time I spend coding and fixing things up. Recently, I have been thinking of how to offset this cost of OpenSource development. One arena I was thinking was of making available my builds via App Stores. This gives the end-users the value add of having a certified build, automatically updated to the latest version. I believe, a person, like me, wouldn’t mind paying a small amount for this additional value add, and would provide a source of income for the OpenSource project. Thus started my experiment.
Experiment 1: Mac App Store
I selected my most popular OpenSource project for this experiment: RESTClient. I began the effort. My initial estimate was for one week after reading this blog. And one fine Monday, couple of weeks back, I began the work. As I progressed, I understood the enormity of the task I had undertaken. From building OpenJDK, to scouring Apple documentation (excellent BTW) written for Xcode development—translating to the Java counterpart, complying to Apple sandbox. I understood that I had jumped into something enormous.
During mid-week, I discovered that making RESTClient compliant to Apple sandbox restrictions is near to impossible due to two reasons:
- The file open API I was supposed to use, needed to open related files. Example, if I open a file of request type, this particular file could link to external files like SSL certificates. I cannot use normal-file-open APIs if I have to use these linked files. The solution? Use JNI technologies to comply to sandbox restrictions, and link them to Java application. Not elegant. No other platform would benefit from these code changes.
- The application configuration were stored by RESTClient in ~/.rest-client folder. Sandbox restricted me from writing/reading to/from this location. And this location is shared between the Cli and GUI application. Again, I would have to do some crazy logic to write generic configuration files for sandboxed and non-sandboxed version of the software.
Based on these developments, I changed my course of plan:
- I wanted to experience Mac App Store onboard. So I selected a more simple application for that experiment, RegularExpression Tester. It is currently under review by Apple.
- I didn’t want my effort spent on RESTClient go waste. I wanted to provide a signed build of RESTClient that could be purchased.
Experiment 2: FastSpring
I wanted a store-front to sell my RESTClient binaries. The effort setting up the store and maintenance of it should be minimal. For the customers, it should be simple effort to purchase and download. The only store I explored was FastSpring. I got hooked to its simple interface, and created my product page. This experiment is now ongoing—I am trying to figure out how many people would really pay for a software that is easily available for download as OpenSource.
Friday, February 28, 2014
XML Validator 1.0
This is a tool I wrote long back, and used exhaustively for a project, and then forgot about it. I did not even do a public release of the tool. When migrating WizTools.org Google Code projects to GitHub, I noticed this project. Today, I invested some time and cleaned the code and made a release. Get it from: https://github.com/wiztools/xml-validator/releases.
Tuesday, February 25, 2014
1.0 release of WizTools.org bc
The unix bc tool developed in Java. Download release 1.0 from GitHub.
Thursday, February 20, 2014
Newer desktop tool releases will require Java 7 to run
All newer releases of desktop tools published by WizTools.org will require Java 7. This is a evolutionary step we are taking to benefit from newer constructs introduced in this version of Java.
Friday, February 14, 2014
Mini-projects move to GitHub
- Export the svn-history for the mini-project, and create it as a new project under GitHub.
- Create git/GitHub specific source assets like README.md and .gitignore.
- Update the mini-project GitHub URL in the pom.xml.
- Update the dependencies for the project to the latest version.
- Make a new minor-release through GitHub.
- Remove the code for the project from Google Code.
- Deprecate the download from Google Code.
Monday, February 3, 2014
RESTClient Source Code Migrated to GitHub
The message from Google seems to be clear: it does not want to invest in non-profit making venture like Google Code. Google has been killing feature-after-feature from the Google Code service recently. The two most affected me were:
- Removing Updates page without any notification.
- Removing the Downloads service.
Add to this fact, Google not adding any new feature to Google Code in the recent past.
Well, the message seemed clear. And we have initiated on our part to move WizTools.org code to other well maintained services like GitHub / BitBucket. Our most used project, RESTClient code is already moved to GitHub. Note, we have moved only the source code, Issues and Wiki is still hosted in Google Code. Moving Issues and Wiki will be done in a phased manner in near future.
Friday, December 20, 2013
Google Code Downloads Download Script
A small script to download all downloads from a given Google Code project: https://bitbucket.org/subwiz/gcode-download/ Since Google turned evil, and deprecated Google Code download service, this script can be used to migrate the downloads to other services.
Saturday, December 7, 2013
RESTClient 3.2.2 Released
Sunday, October 6, 2013
CSV2HTML Tool Project
A new project has been initiated: CSV2HTML. This is a command-line tool to convert from CSV format to HTML table. Download the pre-release version from here: https://bitbucket.org/subwiz/csv2html/downloads.
Saturday, August 31, 2013
3.2.1 Release of WizTools.org RESTClient
The latest version of our flagship product, version 3.2.1 is available for download. The release has two bug fixes: one affecting proxy users in cli tool, and the other affecting people working on IDN URLs. There is one excellent feature improvement that is also implemented: Groovy Test Scripts can now have supporting external Jars. Checkout the release notes for details.
Friday, July 5, 2013
3.0 Release of WizCrypt
Happy to announce the 3.0 release of WizCrypt. WizCrypt is the oldest project from WizTools.org. This is a command-line tool to encrypt files. Originally designed as a cross-platform tool to encrypt my secret files from a shared PC. The algorithm and file-format have been chosen/designed for speed from Desktop user perspective.
Thursday, June 27, 2013
RESTClient 3.2 Release
Get the latest and the greatest release of RESTClient. This release supports Internationalized Domain Name (IDN) and history. View detailed Release Notes here.
Sunday, May 12, 2013
PHP OOP Book Updated
New chapter on PHP Functional Programming and few concepts left in the original edition (like Object Cloning) are covered in this update. Get the new edition here: http://www.amazon.com/dp/B00CM4ZECG. Readers who have already bought the book will receive a mail from Amazon detailing how to download this free update.
Wednesday, May 8, 2013
Applying Lean Principles in Publishing
Launch the minimum-viable product. Then keep improving.
Can this be achieved in publishing industry? This is going to be my experiment. Technical books are best suited for this type experiments, considering the rapid innovation in the software field.
Friday, May 3, 2013
PHP OOP: Quick & Dirty for Advanced Learners
Our first book is published:
The book is available for free under a promotion that ends midnight May 4 midnight PST.
Monday, April 22, 2013
Focusing on the Essentials: A way of Learning
There are many things that we do in our life that don't add any value to our life. One such thing is learning the complete detail of a technology. Ever since I started learning programming, I have taken one approach to learn: learn the essentials. Then jump into implementation. The details of the language / software / environment are just a search-term away.
When buying a technical book too, I try to avoid reference books. Most of the information available in the reference books can be fetched quicker by a web-search. What I want a book to be is like a tutor: explain the fundamentals and give enough information to inspire me to explore more.
The same approach will be followed by books published by WizTools.org. The first in the series of books that will be published is under preparation and will be available shortly. The book covers PHP Object Oriented and Modular Programming.
Monday, October 8, 2012
Android---here we come!
I am happy to announce the start of WizTools.org Android Mini-Projects. We have also made available the first project in Google Play: Date Arithmetic.
I assure you that this foray into this wonderful platform is the beginning of a rich product line from WizTools.org.
Monday, October 1, 2012
Sunday, September 2, 2012
RESTClient 3.0 version available for download
As usual, the release includes:
- Download
- Release notes
- All wiki pages updated
Thursday, August 30, 2012
Sunday, August 19, 2012
RESTClient 3.0 Preview Available for Download
Wednesday, August 15, 2012
RESTClient: 3.0 Development, move to GIT and code re-organization
Now, I once again took the plunge: started working on the 3.0 release. The 3.0 release is major because:
- Change the internal data-structure for holding request and response (to support binary formats)---this will break backward compatibility with the 2.x file formats.
- The UI will have major code re-writes as it will need to support binary formats.
- The public API will change.

