Coding away here and just took ages debugging something that should have been working and it wasn’t. Eventually found an erroneous Get ( ScriptResult ) embedded amongst a whole bunch of Get (ScriptParameter) functions.
This was simply a selection error, but it led me to think ‘what are the most common mistakes we make?’.
Mine are usually the simplest. I’ll focus so hard on the complex stuff, for instance I’m recreating a bill of materials using a combination of ExecuteSQL, JSON and the new While function, but time and time again in a script I’ll add ‘Enter Find Mode’, ensure all the parameters are set, move on and forget to enter ‘Perform Find’. I wish I had a pound for every time I’ve found this while debugging.
Was in Germany last week. On the way home by train (shaking, 250 Km/h), I hit dozens of times the escape key on the touch bar of my MacBook (unwanted; the little finger was just there) - losing some comments in the script-editor and one time a longer custom function. When will I ever learn…
Correct loop exit conditions are my biggest issues.
I’ll set a counter to count up, get interrupted, and then set the condition to reflect a count down. The Script Debugger is what saves me.
Yup, can relate to that. Only last week set an exit loop to a list variable instead of a ValueCount of the variable and wondered why it didn’t finish. LOL.
I must admit Markus, I’ve just opted for the MacBook Air, primarily due to having F5, F6, F7 physical keys (albeit as an update to an i5 MacBook, loved the small/light form, but a combination of the keyboard - Air much better - and some weird bluetooth behaviour made me lose patience and, I finally have to admit it, the screen was just too small for my ageing eyes when travelling). I’m afraid the touch bar isn’t for me and I don’t need the ‘grunt’ as our cloud servers do all the work.
However, when doing complicated calculations in the data viewer I always frequently copy my calculations at various stages from the data viewer to BBEdit, or just in my FileMaker timesheet. I’ve had FileMaker unexpectedly quit on me too many times and have to start again with a blank data viewer.
Maybe a feature request - ‘Save As’ within the data viewer in an XML form that can be reloaded?
Actually Markus, that also prompts ‘where is the most unusual place you’ve developed?’
Due to 3G/4G and the cloud servers I’ve sorted problems out for clients from the car passenger seat while being driven at over 160kph on a German autobahn (work didn’t delay the skiing that day), many a problem solved on ski lifts or while enjoying a gluhwein in a piste bar and the best was from a 4-mast sailing clipper ship off the Malaysian/Thai coast via satellite broadband, 25th wedding anniversary celebration possible thanks to current communication methods, thankfully, as wife and I are co-directors and developers.
And remembering Cecile’s recent advice, I guess that should have been a reply as a linked topic?
Providing this does get posted, another great thing about Discourse is that you can commence a reply, but still navigate around the site, hence I was able to view Cecile’s ‘Reply as a linked topic’ post to ensure I used the correct terminology but retained and complete my reply to Markus.
Where do You develope?
Today, we got many customers where we can access their server via vpn, citrix, horizon, teamviewer, anydesk (whatever), therefore I’m not that much on train as a couple of years ago - but sometimes, I can very good concentrate on something when on train.
Some years ago, when the sky dropped on my head, I went over to the train-station, took a train for a hour or so, then returned. Brought some other perspectives…
(did not find out how to link)
Most of our solutions are hosted on Windows servers on a UK based infrastructure provider, with other servers streaming FileMaker Pro or Advanced, hence everything is cloud based. We have a few old Citrix XenApp servers, but mainly Microsoft RemoteApp servers and we’ve been working with the Microsoft Mac team helping them with the development of Remote Desktop for the last year or two. It has come a long way and there has been an awful lot of optimisation to run FileMaker, which was a much better experience with the move to SDI. Windows PCs just use their built-in Remote Desktop and RemoteApp settings. The Microsoft Mac team also appear to work long weeks and long days.
We primarily develop from our office in East Anglia, with our nephew as an employee in Northern Ireland and our son is helping out from just around the corner from Wembley Stadium in London. We can develop from anywhere, so do relocate occasionally, we recently had 2 x 10-day trips to Northern Ireland and set up shop there.
For those non-cloud customers, like you we have VPN, GoToMeeting and Splashtop to provide support to servers and ad-hoc support to individuals on their computers.
We do take advantage of the travelling and do often take an offline version for trains, planes and automobiles.
The main reason for the reply is for the attachment from a few minutes ago though, while preparing for a generic authorisation script. LOL.
That is a great topic. The mistakes I keep doing over and over are:
- forgetting some setting when installing FMPA (you know stuff like “add newly defined fields to layout”), just because it really is a “set it and forget it” type of setting, so I DO forget it!
- some script steps come by default with a user dialog (like the sort script step). I can’t count the times where I was thinking “I’m done”, then ran the script and had the face palm moment when seeing the dialog prompting me to tune the sort I defined in the script.
- loop exit conditions are also something I have to watch for like @Picatso
- some functions just don’t get register with my brain, not really a mistake, but some day I hope I’ll be able to remember the difference between char() and code() without having to bring up the help. For now, I just make sure review that stuff when I have to pass the certification exam.
Those are the one that come up to mind for now. I’m sure there are some others.
I wish I’d remembered the dialogue prompt, sort, delete, import, etc. As you say, all finished, testing and then up pops one of these. LOL!
The ‘add newly defined fields to layout’ is hardly ever missed though, mainly due to over 30-years of the damn thing screwing up finished layouts. Is it my imagination, but this has been toggled from off by default in FMPA 17 back to on in FMPA 18?
In the industry (especially when ISO certified companies), there is another situation when it comes to updating… intensive testing is required and there are not so much human resources to do test-installs on separate vm’s, building test-groups, etc.
That said, on a quite big installation, we are still on v15. We had to skip 16 (patch that corrected severe issues appeared just 1-2 months before 17 came out and during the 17 run, there were re-certifications (ISO))…
when developing under filemaker 15 and Windows 8.1, there are BIG delays when the script workspace is open. A script that runs normally for a few seconds can take a minute… (or more)
So, it happens every now and then that a developer cancels the script because he/she thinks that fm hangs… leaving uncontrolled data behind…
Interesting this is happening on v15. Most of our problems started with 16 onwards, that has resulted in changes of development techniques.
Go to Related Records seems to be the most severely affected, which we use an awful lot. I’m not sure whether the length of the chain of TOs is a factor (we are so flat out busy at the moment, testing performance metrics isn’t top of our list, I treat myself to a bit of time in this forum as a treat to give the brain a rest). We certainly haven’t seen any performance improvement with FMS 17 or 18, both suffering from the hit after we left v15.
We still have some on v15, mainly due to the work that is needed from moving from MDI to SDI. Most of these are old multi-file solutions, so an accidental click on a background file, that couldn’t be seen in maximise mode in MDI can break a system. However, everyone has been notified that they will need to be moving within the next 12-months.
You obviously have some very strict ISO implementations there.
well… it’s health industry. It’s strict. ISO 900x doesn’t bother me, but ISO 27001…
most of the applications (there are several independent fm applications) are strictly anchor buoy, means short TO-chains
As another speciality, the whole system is virtualized. Clients are just ‘monitors with a linux system’ that does the communications (vmware), all on a 10GB fibre-network. Sometimes very fast, sometimes with hick-ups…
Another one with the dialogue prompt: Replace Field Contents!
Yes, that explains it and quite rightly so.
Similar setup to ours with VMware hypervisors from our IAAS with our Windows Servers built on this on fast SSD. We have both FileMaker Servers and the FileMaker Pro RemoteApp servers on the same Internet accessible VLAN, hence very fast communication between them, with FileMaker streamed to each user’s Windows, Mac, IOS, Android, Linux or Chromebook via RDP.
missing time stamps in script workspace, TO…
since we can not view scripts nor TO in some order, often scripts/TO’s are hard to find… resulting in double stuff sometimes
I abandoned GTRR altogether after v15. Solutions with complex layouts that show a lot information related to the parent record already have deep graphs. This safety measure paid off, although I miss the convenience of GTRR.
Same here in aeronautics. The anchor-buoy concept allows for insulation of business logic parts.
Torsten, as my wife, co-director and co-developer would say: ‘new and improved!’ (usually said with a degree of frustration).