Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Replacing Fox with Python
Message
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01665343
Message ID:
01665344
Views:
108
>I have been reading all the stuff people are writing about
>the most popular programming languages"
>
>So here is my story about the journey moving from FoxPro to Python. Like all of you I became very concerned about my future when M$ decided to drop fox. I immediately starting looking for a replacement that was similar to fox. But I soon discovered not much was really like Fox. Where was the simple data binding - where was the simple UI creator. But worse of all was all the languages I found required me to change my thinking! I realized quickly that what was most important to me was to NOT change the way I was thinking about programming. So I stopped looking for the tools that did data binding, or a simple UI creator but started looking at the programming language. I knew the "C's", Pascal, and Basic. I decided to give Java a strong look - but that only lasted a month when I realized that it was just as bad as C++ -- all that typing for something fox did in a single line of code. I really didn't give MS Basic much of a chance because I did want to stay with MS (I liked the idea of cross platform). Of course there was Business Basic but that seems like going backwards when compared to Fox. So I started with Pascal - Delphi and later Free Pascal (use Lazarus IDE). The free pascal had a UI builder, and some binding for data - all like delphi. But at the time I discovered so many bugs that I was disappointed - but most important it did NOT match the Fox thinking.
>
>About 10 years ago I found Python. I quickly realized using Python OOP thinking was very close to Fox - I had my thinking requirement. But I lacked everything else - no UI builder, not data binding and the idea of using spacing as a control was different. I continued checking other languages but always returned to Python. Back then PyQt was the only thing available that had the UI builder but no data binding. I knew about wxPython (there was only three UI's for python at the time PyQt, wxPython, Tkinker). But about that time I discovered Dabo. Ed Leaf and Paul McNett had started developing a Fox replacement in Python and wxPython. I started using it. It was very rough but worked. I soon discovered the UI builders limitations. But the data binding worked very well (and still does). I had three of the items I wanted
>1. Similar thinking as when working with Fox,
>2. cross platform
>3. The data bind on par with Fox.
>
>OK so the UI's builder was not the best but the Dabo was young and could be improved.
>
>I got this small project and used fox to do it. But I decided to challenge myself to do it in Python as a test. Of course the Python version had an advantage because I had done the work in fox. But I also did not have a very good UI builder. I decided to not use Dabo's UI builder. At first the UI was like pulling teeth but I quickly realized that it was not hard at all. In fact once I understood the sizers I built the UI in an hour. Adding the data bindings and logic was dead simple and in some ways better than Fox. So in the end the time difference was the hour to build the UI. Today I can build most UI's in about 45 minutes so I have added that time for each form. But I also have gained. Now I have cross platform ( I do all my development work on Linux), I have access to literally thousands of python modules all free, and I can use any database (I normally use Postgres) I have come across.
>
>Today I have taken very large Fox programs and converted them to python. And now I turn to Python for almost everything - and it's never failed me. Want mobile - use Kivy, want a website use Django (also to many to list), want gaming use pygame, want graphics use blender, want micro services use RestFul - all in python and working well.
>
>What would I do today - I still would use python. But my UI would be with PyQt and I would write my own data binding tools. Of course I have not lost a single thing using Dabo. But Dabo is not python 3 ready (although I have almost every working with python 3) and that fact holds others back.
>
>My last .02 - take a long look at Python before you choose some companies proprietary code. Python is very easy to understand and use - And it's free!
>
>Johnf

Thank you for your story.

I, too, have been looking at Python recently. The same thing you mentioned have caused my own reluctance. Have not yet look into Dabo. But will soon.
Greg Reichert
Previous
Reply
Map
View

Click here to load this message in the networking platform