Pages Menu
TwitterRssFacebook
Categories Menu

Posted by on Sep 24, 2012 in Development | 8 comments

A quick look at Windev, Windev Mobile and Webdev

I’ve been heads-down coding using this set of tools and I’ve been meaning to write a really in-depth review on each separately  something I will still do. I must admit there is a part of me that selfishly wants to not write anything about it, because frankly, it’s my secret weapon! I have been absolutely amazed by this trio of products, and even more amazed at the low adoption (especially in the US).

The makers of these products is a French company called PC Soft. I ordered the product from the US distributor. PC Soft have always had intriguing marketing but have been lambasted for the pictures of the woman they use throughout their brochures in shall we say…provocative clothing or poses. Probably not a big deal by European standards  but not really appropriate by conservative ole US standards. In some corporate  environments, reading the PDF brochure would  be borderline inappropriate given the imagery. I believe in the past even the product installers had these images and this caused issues for people attempting to install the app server on a client site. At any rate, I’m also lead to believe the imagery has been toned down somewhat in recent years. I for one must admit I’ve been quite enamored by the PC Soft girls ;) Anyway, some highlights appear below of my experience with these products. I’m not going to repeat everything here that you can find on the vendor website, so you may want to check that out too.

Collectively, these three products are referred to as the Wx products below. They are currently on version 17 and it shows. They are mature, slick, highly powerful and very well thought out environments. I think it puts Visual Studio to shame and I wouldn’t even try compare it to Eclipse which currently ranks high on my suckage list.

 

Windev

I started with Windev as I had an idea for a standard Windows application. In essence, it’s an application for Internet Marketers to run their business, keeping track of projects, clients, expenses, income etc. Somewhat of a crossover between Quickbooks and CRM but specifically for the IM industry.  Taking out the bells and whistles, my application came down to fundamentally being client/server type application with a GUI front-end to a database. As good as Visual Studio may be, it still makes you “work” to create what should be routine tasks. Windev EXCELLED at making this application a reality. For starters, it is one IDE that contains everything you need. From UML modelling to ER DB model/editor, to Unit Testing, to source code management, to web services generation to creating installers etc. It’s all there. I pretty quickly mapped out my ER diagram and created the links and then started building the screens. I would say, INCLUDING learning time, it took me around 5-10 evenings of part-time work to get my basic application together.

Webdev

This is the part of the family for creating web applications. I admit I was a little frustrated at first but as I got more familiar with the product, it started growing on me more and more. Coming from the J2EE world, I kept struggling to make the analogy about how I would do it in that technology versus this technology. Sometimes the best way is to just suspend what you know and embrace a new way of doing things.

Webdev allows you to design your pages using a WYSIWYG editor and then conveniently write your logic in the appropriate events (using the same W-language discussed below). It is pretty slick in terms of how its approached web coding: The editor shows you the events that will be executed on the client side (ie. browser) and those that will be executed server side. For example, a buttonClick event will fire on both, you just add your code where you need it. From a browser side perspective, you can even toggle the language to use Javascript, but you would rarely need to. I used this feature when I incorporated Google maps and it works great. On the server side, again you use W-language but you can use PHP as well. Oh, and AJAX is a snap with this. You basically mark which procedure you want to be able to execute as a AJAX method and you’re done.

You can deploy your site either as a native webdev site or as a php site. If you want to use native webdev, you are required to run the webdev application server. I think it’s well worth it given the benefits it gives you in terms of session management and general webapp administration. You can develop around this but managing your own sessions can be a pain with web development generally.

Webdev will definitely get its own detailed review later on in this blog, as I will give a blow by blow breakdown of my project I developed in it. Right now, I’m really really liking this product. The “problem” is that web development today has become a laborious task. J2EE killed itself with a ridiculous number of frameworks needed in a project (Hibernate, Spring, extjs etc etc). However, this is done (call me a skeptic) because its “pure” and makes code “maintainable”. So you have separation of concerns, MVC models, layers of abstraction, design patterns etc etc. For these hard core idealogists, webdev will be a dissapointment because it hides all (actually most, not all) of this from developers. Other products like Ruby/Rails are trying to address the mess that J2EE has become. Regardless, the current web world seems to have centered around J2EE, PHP, Ruby, Python and .NET as the major players. That makes introducing a new product particularly difficult. However, if a CTO worth his or her mettle would calculate TCO, Webdev would be a slum dunk winner in terms of productivity gains.

Windev Mobile

Next up is their product for creating mobile apps. The IDE, language etc is all similar to the Windev and Webdev products. So when I needed to create my iphone app, it took just a hour or two to get familiar with the differences for mobile. Within a few hours I had my simple app created and deployed to my phone. Windev Mobile can generate code for a number of different devices. Note though that you will still need xcode/Apple to create your final IPA for distribution to an iphone or the app store.

Clearly I need to allocate a complete review to Windev Mobile as I would like to give a detailed run down of the experience with it. I am busy finishing up both my big web site and the mobile app that accompanies that, and that will be a good opportunity to present the review in terms of a case study.

 

W language

These products use their own proprietary language called W-Language. It’s very BASIC’esque. I know in this day and age, to mention a language as being proprietary is enough to scare people away, but it really shouldn’t. For one, this W-language is used across all three products, and the products themeselves offer multiple platform generation. So, with having learned this one language, I can write applications for Windows, Java/Unix, Websites, native iOS app, native Android apps and native Windows 7 apps!

The language itself is also very powerful yet easy to use. It offers both high levels of abstraction to make life easy but it does let you get down to the nitty gritty if you prefer.

As an example of its high level commands, look at “ScreenToFile()”. In an application, you typically have a number of fields on a form that need to be added to a database. Instead of manually grabbing the value of each field in the form and then passing it into a DAO (or similar), you can simply type ScreenToFile() and all the fields on the screen which are DB linked are automatically inserted into the File buffer, which you can then simply follow up with HAdd() to add the record to the DB. Quick, easy, and painless. The way it should be.

 

Data modification

We all know the bane of modifying the DB table structure…you need to modify your code, stored procedures AND, worst of all, create a patch file to modify the production DB. Here, the Wx products shine by automatically picking up your DB modifications, proposing the code changes AND actually modifying the DB structure for you, along with versioning making patch updates quite easy.

SQL Builder

I’ve used graphical SQL builder tools in the past and generally always came away dissapointed and ended up manually coding the SQL. However, the SQL builder tool here to create what they term “Queries” is actually incredibly impressive, and I’ve been able to create sophisticated multi-table joins with calculations, all through point and click.

HyperFile

The products ship with Hyperfile which is a free to distribute database engine. Don’t worry, you can use almost any available database (including MySql, Oracle etc), but using HF makes it very easy. HF itself is remarkably powerful and performance seems impressive so far. HF can be used in a traditional local database manner (think MS Access) or can be used as a full DB server managing multiple databases. It even supports being set up in a clustered environment for failover or loadbalancing requirements. It features many functions you would only come across in larger systems such as replication, frame compression and more.

The products themselves abstract you from the underlying database in that when I call, for example, HAdd() to add a record, the driver determines how to add this to the underlying DB, so switching out databases should be relatively straightforward.

Dongle

This is a controversial item: The dongle! The Wx products are copy protected through the use of a dongle. Very important: This is only the development IDE’s. You can freely distribute the resultant applications you create and your end-users do not need a dongle. I don’t like using a dongle…and if the dongle fails I have to get a replacement from PC Soft which can delay my development. Even worse, if the dongle is lost or stolen, there is no deactivation procedure. PC Soft will require you to pay for an entire new software license, NOT just the cost of replacing the dongle. That, to put it mildly, sucks. I would much rather they had a “phone home” mechanism so that dongles can be deactivated and I just pay for the cost of a new dongle.

Community

One of my biggest gripes with the entire Wx product suite is not related to the product itself but the lack of a developer community. This is a vicious circle: Less adoption means less of a community which means less adoption…and around and around we go. They do offer free technical support which gets mixed reviews. I have not used it enough to really have an opinion. They also offer a forum but they do not contribute to their own forum. So, you will see many questions go completely unanswered on the forums, causing great frustration. I believe PC Soft would be well suited to continue to let the community be developer driven, but step in to help or assist where need be.  There is at least one third party forum which at least for me has been a life saver for when I got stuck a few times. Given that you are in essence using a proprietary product, it can be unnerving not having a big developer community so that you can easily google the issue or ask for help.

Initial Summary

I call this an initial summary only in that I will be following up with more reviews. I can honestly say that at this point I am incredibly impressed by this set of products. I have been phenomenally productive and most of all, coding has become fun again. I’m not configuring 5 different frameworks and modifying xml files just to put up a simple app. Almost every day I used the product, I discover something new that makes me think “wow, awesome”. It’s really that good. I truly am surprised that there is such a lack of adoption, and it is sad that corporations are scared of “proprietary” technology. Yet, they are doing themselves a disservice by not looking at products like this. The productivity gains will be unbelievable.

Did you like this? Share it:

8 Comments

  1. Chris, a couple of people have contacted me with a “well done” that belongs to you. I have responded with “I wish I had” – what you have here mirrors my own experience so far with this product. PC Soft has obviously done their homework. I have had the opportunity to work with their tech support as well and I have to say that is it impressive to get responses back that sound as though the tech actually read and understood the problem.
    The more I use it the more I like it.
    Well done.

  2. All are welcome to the chatgroup on skype, contact me andy_ccscowboy or chris here to get involved.

    good article.

  3. Good article. I have been using windev a few years now and bought webdev this year. Webdev is great for making a clients portal / webshop / webcrm. I havenot used the applicationserver. I use php and allthough it then has not all the features of the application server, it is quite powerfull. And development time is incridible. Days become hours!

  4. Hi Chris

    I’m Mike from Namibia (Africa). I have been using all three tools since Version 9 and have not looked back once.
    I come from the days of Cobol and mainframes, and yes, those environments still have their place, but only in massive Enterprise Environments.
    So the rest of the world (88% ++) needs solutions that are scalable and fast to develop.

    I have evaluated and tested a lot of dev enviros and frameworks and till now I have not found one that is better with more abstrction than those from WX… native Win32 / 64 exe, .Net Assembly, Java, Linux etc…

    Yes from a puritan developer perspective Java does seem better and purer, but defininately not more efficient when it comes to production hours.

    What also plagues me about Java is the fact that there so many libs and layers – nightmare when something goes wrong – ever looked at a Java bug report???

    Anyway I am not here to bad-mouth any given technology – all have their place in the sun – WX gives me just access to most of them in one development environment.

    The only thing I wish PCSoft would do, is create more Gateways to different technologies – ie. GlassFish Server, python etc…

    So I agree with you on everything said – the main problem is that USA is mainly JAVA orientated (Oracle etc…) – France has probably the biggest WX following and there are numerous resources and blogs in French – pity I don’t speak French – will see what the future brings.

    I guess it is up to us, the developers, to create and maintain the English Community.

    Regards

    Mike

    • Hi Mike – thanks for stopping by. Small world…I spent a part of my childhood in Namibia! I fully agree with your comment on all the libraries and layers inherent in a J2EE solution. I frankly just don’t enjoy coding in that environment anymore, and to me, coding is part science, part art…and part fun!

  5. Thanks Chris for that review. I am looking for that kind of tool, since I want to create some applications without having to spend hours, days and nights trying to reinvent the wheel. The other factor is that I’m not a developer. I know C++, VBA and I think I’m enough smart to understand and learn new programming languages. Do you think someone like me, that doesn’t have a lot of experience can handle Win7, considering that I will use it to develop very basic applications?

    ——–

    Totally agree with you about those very sexy brochures. It is so unusual that it’s even hard to stay focused on the text. While I can live with that, I don’t understand why they don’t provide a different brochure for the North America market. Something more, let’s say, conservative that can suit us, people with a high level of morality?

    • Thanks for stopping by.

      If you even remotely know VBA or C#, you’ll be able to pick-up W-language which is significantly easier. It is a massive productivity boost if you’re writing apps that use a database etc, as the integrated environment gives you everything you need.

      The downside is that because its so proprietary, you don’t find a lot of help or code samples, though there is one useful forum.

      Last I checked they had an Express version for free you could download. That’s how I got started … forced myself to go through the tutorials and quickly picked it up.

  6. Hi Chris

    How are you doing?
    How is your experience with WX holding up?

    Maybe you can send me your email address so we can chat.

    Regards

    Mike

Leave a Reply to Mike Grellmann Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>