That sounds great Paul!  I really enjoy Xojo and the language syntax seems to make sense to my VFP side of my brain.

-Kevin

On 4/1/19 5:05 PM, Paul H. Tarver wrote:
Kevin,

I wanted to follow up and let you know based on your recommendations, I have 
been playing around with Xojo in a more in-depth way for the last 30 days and 
while I can't say I'm expert by any stretch, I've been able to piece together a 
little bit of working code using some of the examples and I'm fairly happy with 
what I've accomplished so far. I'm approaching Xojo differently this time 
(thanks to you) and I think perhaps this third attempt to learn Xojo may be 
more successful.

First, I chose a project to convert from Foxpro to Xojo which is relatively 
uncomplicated and makes sense to build in Xojo instead of trying to replicate 
my main production work environment at this point.

Secondly, I've challenged myself to spend 30-60 minutes each day to make just 
one thing work in the new project. Maybe it is just making a splash screen, or 
creating a screen to add or edit items to a simple table, or figuring out how 
to pass parameters to a window or use a new class/method/property/etc. By 
limiting my time in Xojo, I don't get too frustrated and because the daily 
goals are small, I get to celebrate a small win each day instead of feeling 
like a failure because I'm still miles away from the finished product. This 
strategy also gives me time in between sessions to think and process what I've 
been working on and that has helped with my understanding greatly. Some days I 
simply re-do what I did the day before because having thought about it, I come 
up with a better way to accomplish the same thing.

Finally and most importantly,  I've come to accept this will not be a quick 
transition and accepting that fact has let me focus on the fun of learning 
instead of the stress of trying to get a job done.

I'll post some updates later if anyone is interested in this journey with Xojo 
I've started.

Thanks for all your comments and input!

Paul H. Tarver


-----Original Message-----
From: ProfoxTech [mailto:profoxtech-boun...@leafe.com] On Behalf Of Kevin J 
Cully
Sent: Monday, February 25, 2019 10:53 AM
To: profoxt...@leafe.com
Subject: RE: [NF] Migrating Skills From Foxpro to Xojo

Hello Paul and other potentially Xojo interested parties,

First thing to remember is that Xojo is not Foxpro.  It has different strengths 
and weaknesses.  I love programming in it as I find it simple and easy to get 
started, but doesn't have many limitations to what it can do.  Sound like 
Foxpro?  You would *never* program a modern video game in Xojo however.  That 
also sounds like Foxpro.

If you don't like Xojo, no problem.  We can still be friends.  Don't like the 
closed source nature of it?  Too expensive?  Not enough events?  Not data 
centric enough?  I get it.

There is a lot to like however.
1. First, it's not owned by Microsoft.  Xojo is a USA based small company that 
has been around for over 20 years, and has their developers and staff spread 
out throughout the world.  And they are really nice people that are interested 
in developing a great product.
2. You can develop desktop, web and console applications.  Yup, with a singular 
code base of classes, you can share them across projects that target these 
different project types.
3. It is multi-platform: Winblows, Mac, Linux, Raspberry Pi (Linux), and iOS.  
Android apps coming soon but I'm not sure exactly when.
4. You can get started for free!  You can download the IDE and build as many applications 
as you like and use it forever without paying Xojo one cent.  You only need a license 
when you build and application (such as an EXE on Windows) and a license for the target 
platform.  I prefer the "Xojo Pro" license as it gets all of the platforms I am 
interested in.
5. Licensing is reasonable in cost and scope.  The cost for a Pro license is $700 and 
gets you all updates for a year (typically 3-4 releases in a year) and you can build for 
almost any platform.  If you let your license lapse, you can continue to use that Xojo 
IDE forever, you just won't get updates.  A lot of developers pay for a license every 
other year as a cost savings plan.  You can develop as many solutions and deploy to as 
many customers as you like.  You don't need to let Xojo know about any of it! There were 
several other "VFP Replacements" that wanted to know about your customers.  
Unacceptable in my mind.
6. Xojo uses native controls.  This is foreign to us.  VFP runs only on Windows and we 
don't even think about the fact that they are windows controls.  Remember running old 
Java applications and Windows and they seemed "funny"?  The controls didn't 
look right?  That's because they were drawn in Java.  Mac people hate that.  Hate that 
with a passion.  A Mac app needs to look and work like a Mac app.  Xojo (appropriately) 
made the design decision that all platforms will use the target platform native controls. 
 Windows apps work and look like Windows apps.  Linux apps look and feel like Linux apps. 
Etc.  Don't underestimate how important this decision was.  This also means that Xojo can 
be handcuffed to operating on the least-common-denominator of events and controls 
however.  Not seeing your favorite control built into Xojo? It might be because it isn't 
available on all platforms.  Don't panic!  You can add it yourself or purchase it from a 
3rd party supplier.
7. Xojo is database agnostic.  It natively works with SQLite out of the box, 
but has plugins to interface with Microsoft SQL Server, MySQL, PostgreSQL, and 
anything you can access with ODBC.  Not seeing your favorite database there?  
There may be a plugin available either open sourced or as a paid solution.  
MongoDB anyone?
8. Xojo holds a conference every year called XDC.  (https://www.xojo.com/xdc/ ) 
At the conference will be the president of Xojo Geoff Perlman, their marketing 
staff, and almost every single engineer and technical support staff in the 
company.  You can eat breakfast, lunch and dinner with each of them.  Amazing 
really.  Did Microsoft send the engineers to the Foxpro conferences? Not that I 
can remember.  Perhaps they did.  But, every single year Xojo steps up to the 
plate.
9. The same good feeling you have with developing in VFP, you can have in Xojo. 
 Quickly prototype a solution?  Grow a small system into a large
10. You can deploy web apps to Xojo Cloud with a single click (although it is a 
little pricy) or you can deploy to a Linux server such as a Digital Ocean 
droplet for as little as $5 per month (or something like $0.07 per hour).  
That's really cool.  Getting Foxpro supported hosting was pretty expensive and 
hard.  YMMV.
11.  Don't like the book to learn Xojo?  Check out the Xojo YouTube channel: 
https://www.youtube.com/user/goxojo
12. Want to learn Xojo by example?  Xojo comes with *hundreds* of examples covering many 
many subjects.  When I'm trying something that I've never done before, I just click the 
"New Project > Examples"  and choose from the plethora of examples.  I wish 
Foxpro had that many examples when I got started decades ago.
13. I've developed a "VFP" class for Xojo to help.  Want STRTOFILE() and 
FILETOSTR() that works cross-platform?  STRTRAN()?  You can even ADDBS()?  I'm happy to 
share that and it helps ease the transition to Xojo.  Eventually I stopped using these 
functions and went native, but it was nice to transition.
... There is more good stuff about Xojo, but I'll stop here ...

Is it all good stuff?  Heck no.
1. You cannot press a magic button and convert over your VFP solutions.  The 
languages are cousins of each other, but it will still be a rewrite.  I chose 
to just write new applications in Xojo and eventually I got to all Xojo.
2. Data handling is different.  Xojo uses recordsets and not cursors.  You handle the 
data a bit more "manually" than the magic of ControlSources.  It wasn't a big 
deal to me, but it does keep you from creating forms with millions of data controls.  
That might be a good thing?
3. The built in report writer is pitiful.  For the most part, I write my 
reports out to HTML/CSS and display into the browser.  There is a 3rd party 
report writer called Bikini Shorts that is really powerful and wicked fast. 
(https://bkeeney.com/allproducts/bkeeney-shorts/ )
4. The Xojo community is pretty nice for the most part, but there are a couple 
of people that are mean and petty.  Be prepared to go into the Xojo forum and 
read some of that.  I think they're full of piss and vinegar because they know 
that Xojo cares and is listening.  For some people, the sky is always falling.  
Some people just want to see the world burn.  Most people are very kind and 
helpful.  That's the aspect to focus on and forget the nasty people.  We don't 
have time for that.
...

Okay. My fingers are moving on to other tasks.  All I can say is that I like it 
and I've created some good business solutions for my employer that I think have 
made things better!  Take Xojo for a spin.  I like it and you may as well.

-Kevin



-----Original Message-----
From: ProFox [mailto:profox-boun...@leafe.com] On Behalf Of Kevin J Cully
Sent: Friday, February 22, 2019 4:57 PM
To: ProFox Email List <profox@leafe.com>
Subject: RE: [NF] Migrating Skills From Foxpro to Xojo

There's a lot there.  I'm out of time for the day unfortunately.  Let me give 
you a full response on my thoughts on migrating to Xojo on Monday sometime.

-Kevin


-----Original Message-----
From: ProFox [mailto:profox-boun...@leafe.com] On Behalf Of Paul H. Tarver
Sent: Friday, February 22, 2019 12:04 PM
To: profox@leafe.com
Subject: [NF] Migrating Skills From Foxpro to Xojo

I hijacked the original thread with a reply changing the subject and adding an 
[NF] flag to the subject because a small comment Kevin made caused me chase a 
different rabbit for a little bit.

I have reviewed Xojo on a couple of different occasions over the past few years 
and I have tried to work my way through the book that was written to teach 
people how to program it and I find myself drifting by the 3rd or 4th chapter 
every time. Not a fault of the author; just rather a fault of me wanting 
something a little more advanced.  Anyway, I've run into a couple of hurdles 
with trying to learn Xojo and perhaps someone here has some suggestions to help 
me out.

Try not to laugh at what may be very dumb questions! :)

1) I build a lot of similar but customized apps using a shared library of tools 
I've developed over the past 25 years. Every app I build contains a LOT of 
forms, reports and programs shared by all my applications as well as a lot of 
forms, reports and programs which are copied from previous projects and then 
customized for the current client. While I have seen multiple Xojo advocates 
confirm a similar process is possible, but I cannot find clear explanations of 
how to make that happen.

2) Every Foxpro application I build starts with a .PRG which reads a 
configuration .INI file and then setups up the environment, displays a splash 
screen, checks my version numbers, calls a database update process if a version 
change is detected and if all is good, it displays the main screen for the 
user. Once the user chooses to exit my application, a shutdown process is 
initiated and everything is closed in an orderly way. That having been said, I 
have been unable to find source code to a simple, complete Xojo application or 
instruction book that can walk me through the start to finish logic and firing 
order of all the start-up and shut-down events and allow me to compare that to 
the process I'm so familiar with in Foxpro.

3) Are there any good white-papers or books by Foxpro programmers that can 
provide insights into translating my Foxpro knowledge and skill directly into 
Xojo.

I use Foxpro on a daily basis for my business because I cannot find a language that 
satisfies my clients' needs the way Foxpro does. I would love to be able to say I have a 
backup language like Xojo, but I get only so far before I give up and go back to what I 
know and love. So let's assume Kevin is correct when he states Xojo is " a viable 
language for VFP developers" because I do not want to go down the rabbit hole of 
considering all the other alternatives for this sake of this discussion and share with me 
any tips that can help me understand Xojo on a higher level beyond just creating a simple 
form. I want to understand Xojo at a Complete Deliverable Application level and talk 
about mimicking the features I depend upon in Foxpro to share a library of tools, forms 
and code across hundreds of similar custom applications.

Paul H. Tarver



-----Original Message-----
From: ProfoxTech [mailto:profoxtech-boun...@leafe.com] On Behalf Of Kevin J 
Cully
Sent: Friday, February 22, 2019 8:11 AM
To: profoxt...@leafe.com
Subject: RE: false news....

Well, a lot of that article is correct, even though I don't want it to be.  VFP 
as a *language* is as secure as the programmer programmed it to be.  VFP as a 
*database* isn't secure itself.  You can encrypt fields.  You can encrypt the 
directory that the data is stored in.  But DBF data isn't secure.  You wouldn't 
store social security numbers or credit card numbers in Excel spreadsheets, 
right?

I've haven't recommended DBFs for storage for over a decade now.  There are 
better storage mechanisms such as Postgres, MariaDB, and even SQLite which can 
be set up as an encrypted database.  VFP as a language is still valid, although 
it will never be able to create 64bit applications but that is a different 
subject.  [Insert Xojo plug here as a viable language for VFP developers.]  I 
had a potential client where they based their primary keys based on employee 
Social Security Numbers.  They didn't like it when I told them that they'd need 
a complete rewrite. Notice this would have been the case no matter what 
language/technology they were using.  It was just piss poor design.

It appears from the article, that when the vendor was notified of the 
situation, that they were able to quickly address it although the article 
didn't say what that solution was.  Probably encrypted the field?  Hash the 
field with an external secured table containing the sensitive data? Who knows. 
To me, that's a win.  Hopefully the vendor contacts all customers notifying 
them that there is a vulnerability and that there is a solution available.

As Ted Roche always says "Security is a process".

-Kevin

-----Original Message-----
From: ProFox [mailto:profox-boun...@leafe.com] On Behalf Of Dave Crozier
Sent: Friday, February 22, 2019 6:07 AM
To: 'ProFox Email List' <profox@leafe.com>
Subject: VFP: false news....

Ignorance and stupidity still runs in the so-called “expert consultant” 
fraternity.

“An outdated software that is used by about 200 Vermont municipalities and the 
Vermont Tax Department has long contained flaws that exposed sensitive 
information including Social Security numbers, according to an IT consultant 
and the software company’s founder.”
“You could make a strong case that Visual FoxPro shouldn’t be used on a 
government level,” Johnson said.

https://vtdigger.org/2019/02/05/consultant-outdated-software-left-worker-information-exposed-200-towns/

Thankfully the software owners realise that it isn’t a fault in VFP, it is a 
fault in the designing of the infrastructure.

Expert:
Ex - Out of date
Spurt – a drip under pressure!!

Dave Crozier
Software Development Manager
Flexipol Packaging Ltd.

﴾⚆ᨎ⚆﴿



Flexipol® Packaging Ltd
T 01706 222 792
E dcroz...@flexipol.co.uk
W https://www.flexipol.co.uk/
Follow us:
Unit 14 Bentwood Road, Carrs Industrial Estate, Haslingden, Lancashire, BB4 5HH

​This communication and the information it contains is intended for the person 
or organisation to whom it is addressed. Its contents are confidential and may 
be protected in law. If you have received this e-mail in error you must not 
copy, distribute or take any action in reliance on it. Unauthorised use, 
copying or disclosure of any of it may be unlawful. If you have received this 
message in error, please notify us immediately by telephone or email.
Flexipol Packaging Ltd. has taken every reasonable precaution to minimise the risk of virus transmission through email and therefore any files sent via e-mail will have been checked for known viruses. However, you are advised to run your own virus check before opening any attachments received as Flexipol Packaging Ltd will not in any event accept any liability whatsoever once an e-mail and/or any attachment is received. It is the responsibility of the recipient to ensure that they have adequate virus protection.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
​​
​Terms & Conditions:
  Notwithstanding delivery and the passing of risk in the goods, the property in the 
goods shall not pass to the buyer until the seller Flexipol Packaging Ltd. ("The 
Company") has received in cash or cleared funds payment in full of the price of the 
goods and all other goods agreed to be sold by the seller to the buyer for which payment 
is then due. Until such time as the property in the goods passes to the buyer, the buyer 
shall hold the goods as the seller's fiduciary agent and bailee and keep the goods 
separate from those of the buyer and third parties and properly stored protected and 
insured and identified as the seller's property but shall be entitled to resell or use 
the goods in the ordinary course of its business. Until such time as the property in the 
goods passes to the buyer the seller shall be entitled at any time


--- StripMime Report -- processed MIME parts --- multipart/related
   multipart/alternative
     text/plain (text body -- kept)
     text/html
   image/jpeg
   image/jpeg
   image/png
   image/png
   image/png
   image/png
---

[excessive quoting removed by server]

_______________________________________________
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/d51fa73a-7ce2-3e55-7fe2-2cb64b8b8...@cully.biz
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to