Where can I buy a large analogue meter?

Sounds like a discussion I heard at a software review meeting in the 1980's, except the target mentioned was 16k and the modern programmer pointed out that the traditional program didn't have comprehensive exception handling, and crashed from time to time in consequence.

Doing the job properly does require more code. As soon as you have got enough memory space to write looser code, you can write it in ways that make it easier to review, easier to debug or maybe even provably correct.

- Bill Sloman, Sydney

Reply to
Anthony William Sloman
Loading thread data ...

Just how much data have you got?! That is a lot of disks.

Reply to
Commander Kinsey

One product I worked on was a handheld pH / ion concentration meter that used an 8049.

formatting link
I did the pH meter and another programmer did the ion concentration. Reading the electrode value from the A/D and driving the user interface was the same for both products but the math was sufficiently different that 2K wasn't enough to do both.

There was also a benchtop meter/auto-titrator that used a Z-80. 64K was a real luxury.

In reply to Scott Lurndal, yeah the compiler guys have gotten really good after 3 decades...

Reply to
rbowman

I have a mouse driver that's 130MB. WTF? That's over 3 times the size of the hard disk on a PC I had in 1991. What does the mouse driver do? Watch for left and right and a few button presses? In 1991 I think it was 30KB. 4000 times less efficient programming, we've really come far.

Reply to
Commander Kinsey

I think it was Python somebody recently said in a newsgroup that a compiled "hello world" program was 60KB. Beyond a joke.

Reply to
Commander Kinsey

On a sunny day (Sun, 17 Apr 2022 18:42:23 +0100) it happened "Commander Kinsey" snipped-for-privacy@nospam.com wrote in snipped-for-privacy@ryzen.lan:

I dunno, many are CD-R from many many years ago, with all sort of things, even movies. For more recent data this is sda2 from a Raspberry Pi4 with 4 GB RAM: /dev/sda2 3844510712 3239539624 409610424 89% /mnt/sda2

so 89 % of a 4 TB Toshiba USB harddisk That includes images of SDcard, some distros, what not. Logs.. I have radiation logs that go back years for example. Backups of the website... smartphone, legal stuff, financial stuff, all code I wrote, security videos, all emails of the last 20 years or so, pictures I took and videos I made, many Usenet postings I saved back over the last 20 years, easy with the newsreader I wrote it has a search function, etc etc.., datasheets... But even Linux 'locate' will find things in seconds.

Reply to
Jan Panteltje

Security videos can be huge, I have two 4K cameras running continuously, but I have a core of a Ryzen 9 3900XT allocated to each which only records when it sees something suspicious. I've even used it to locate my neighbour's cat, which she found confusing. But it auto deletes after a month unless I save it.

Reply to
Commander Kinsey

The whole IP thing is a mess. Stephen Kinsella makes a good argument against patents and copyrights. That Oracle/Google debacle is a good example. Java wasn't even Oracle's brainchild; they bought it when they acquired Sun.

Earlier it had been Sun versus Microsoft when MS came out with Visual J++. The agreement would have frozen J++ so MS discontinued it. There was a brief fling with J# but MS used what it had learned to develop C#, which is superior to Java and C++ imnsho. In a way Sun did the world a favor.

Music is a good analogy. I was messing around with a guitar in a shop, playing in C, but no specific song. Another customer asked what the tune was and I said I didn't know.

Some employment contracts disallow working in the same industry for N years after leaving. That makes more sense. More by chance rather than planning I've never worked in the same areas but if I did I don't know how I would filter what I knew.

As for patents, one of my early mentors was an inventor who had launched several products. He never patented anything and felt the patent process disclosed too much. Bring the product to market, grab the money, and move on to another. If it is a success it will be copied anyway but there is no reason to give competitors a heads up.

Reply to
rbowman

Until the company upgraded my desktop I was using the laptop for some projects. It beat the hell out of an elderly Core i5 with a hard drive.

I'm not a real fan of laptops but they have their place. I'm using a company supplied laptop for remote work. Admittedly the HDMI is plugged into my desktop monitor though a switch and I use a bluetooth mouse and keyboard but it's good enough to VPN in to a real machine.

It's also difficult to travel with a desktop...

Reply to
rbowman

Agreed apart from "disallow working in the same industry for N years after leaving". Most people probably work in the same industry for most of their life. So such a job means if you ever choose to leave, you can't get another job. I would therefore never take a job with that in the contract.

Reply to
Commander Kinsey

Have you looked at DragonOS? I'm running an old SuSE distro and have thought about trying it. I've been messing around with RTL-SDR on Windows and it sounds like one stop shopping for Linux.

Reply to
rbowman

While I prefer the AVR series I definitely agree. My day job is C/C++/C# and increasingly JavaScript with a new Angular product but when I get home I like to keep in simple like when I could wire-wrap up a working Z80 board.

Reply to
rbowman

I've run into that a couple of times. In one case out of about 30 programming and QA machines I found two that could run the program. I just happened to develop it on one of the two and was fat, dumb, and happy until I tried to distribute it.

Python 3.x I assume? ESRI has been using 2.7 for some GIS scripting but are moving to 3.x. I can hardly wait to rewrite my scripts.

Reply to
rbowman

Agreed, but I do a lot of GIS work and ESRI went to Python for a scripting language when VBA died. For quick and dirty jobs I can write

20 lines of Python or 200 lines of C++. (Their API uses COM. I have used C with COM but life is too short...)
Reply to
rbowman

Coming in to this rather late - that turns out not to be the case.

The megahertz hasn't gone up much, but the instructions per clock has.

As an example of the reasons for this - do you know about speculative execution?

Once upon a time a processor got to a branch, waited to find out which way to go, then carried on with the correct instructions.

Then they started to decode the instructions on the non-branch path early, because they might need them.

Then they added branch predictors, which take an increasingly good guess as to which way the branch would go, and started on those.

The latest ones start running the instructions on _both_ paths, and throw away the wrong ones.

All done without increasing the megahertz.

There are lots of other things going on too.

Andy

Reply to
Vir Campestris

Not sure, they run on a Debian virtual machine using Oracle Virtualbox. This is the last log output I can find if it means anything to you:

<core_client_version>7.19.0</core_client_version> <![CDATA[ <stderr_txt> 2022-04-17 09:28:54 (18912): Detected: vboxwrapper 26202 2022-04-17 09:28:54 (18912): Detected: BOINC client v7.19.0 2022-04-17 09:28:55 (18912): Detected: VirtualBox VboxManage Interface (Version: 5.2.44) 2022-04-17 09:28:55 (18912): Feature: Checkpoint interval offset (531 seconds) 2022-04-17 09:28:55 (18912): Detected: Minimum checkpoint interval (600.000000 seconds) 2022-04-17 09:28:56 (18912): Create VM. (boinc_b700ee8ebff8eb66, slot#8) 2022-04-17 09:28:57 (18912): Setting Memory Size for VM. (6144MB) 2022-04-17 09:28:57 (18912): Setting CPU Count for VM. (1) 2022-04-17 09:28:57 (18912): Setting Chipset Options for VM. 2022-04-17 09:28:57 (18912): Setting Boot Options for VM. 2022-04-17 09:28:58 (18912): Setting Network Configuration for NAT. 2022-04-17 09:28:58 (18912): Disabling VM Network Access. 2022-04-17 09:28:58 (18912): Disabling USB Support for VM. 2022-04-17 09:28:58 (18912): Disabling COM Port Support for VM. 2022-04-17 09:28:59 (18912): Disabling LPT Port Support for VM. 2022-04-17 09:28:59 (18912): Disabling Audio Support for VM. 2022-04-17 09:28:59 (18912): Disabling Clipboard Support for VM. 2022-04-17 09:29:00 (18912): Disabling Drag and Drop Support for VM. 2022-04-17 09:29:00 (18912): Adding storage controller(s) to VM. 2022-04-17 09:29:00 (18912): Adding virtual disk drive to VM. (vm_image.vdi) 2022-04-17 09:29:00 (18912): Adding VirtualBox Guest Additions to VM. 2022-04-17 09:29:01 (18912): Adding network bandwidth throttle group to VM. (Defaulting to 1024GB) 2022-04-17 09:29:01 (18912): Enabling shared directory for VM. 2022-04-17 09:29:01 (18912): Starting VM using VBoxManage interface. (boinc_b700ee8ebff8eb66, slot#8) 2022-04-17 09:29:07 (18912): Successfully started VM. (PID = '10664') 2022-04-17 09:29:07 (18912): Reporting VM Process ID to BOINC. 2022-04-17 09:29:07 (18912): Guest Log: BIOS: VirtualBox 5.2.44 2022-04-17 09:29:07 (18912): Guest Log: CPUID EDX: 0x078bfbff 2022-04-17 09:29:07 (18912): Guest Log: BIOS: ata0-0: PCHS=16383/16/63 LCHS=1024/255/63 2022-04-17 09:29:07 (18912): VM state change detected. (old = 'poweredoff', new = 'running') 2022-04-17 09:29:07 (18912): Preference change detected 2022-04-17 09:29:07 (18912): Setting CPU throttle for VM. (100%) 2022-04-17 09:29:07 (18912): Setting checkpoint interval to 600 seconds. (Higher value of (Preference: 600 seconds) or (Vbox_job.xml: 600 seconds)) 2022-04-17 09:29:09 (18912): Guest Log: BIOS: Boot : bseqnr=1, bootseq=0032 2022-04-17 09:29:09 (18912): Guest Log: BIOS: Booting from Hard Disk... 2022-04-17 09:29:13 (18912): Guest Log: vgdrvHeartbeatInit: Setting up heartbeat to trigger every 2000 milliseconds 2022-04-17 09:29:13 (18912): Guest Log: vboxguest: misc device minor 58, IRQ 20, I/O port d020, MMIO at 00000000f0400000 (size 0x400000) 2022-04-17 09:29:17 (18912): Guest Log: VBoxService 5.2.42 r137960 (verbosity: 0) linux.amd64 (May 13 2020 21:45:13) release log 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000224 main Log opened 2022-04-17T09:29:15.965960000Z 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000365 main OS Product: Linux 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000400 main OS Release: 4.19.0-14-amd64 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000467 main OS Version: #1 SMP Debian 4.19.171-2 (2021-01-30) 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000487 main Executable: /opt/VBoxGuestAdditions-5.2.42/sbin/VBoxService 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000487 main Process ID: 538 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.000488 main Package type: LINUX_64BITS_GENERIC 2022-04-17 09:29:17 (18912): Guest Log: 00:00:00.001543 main 5.2.42 r137960 started. Verbose level = 0 2022-04-17 09:29:27 (18912): Guest Log: 00:00:10.014528 timesync vgsvcTimeSyncWorker: Radical guest time change: -3 589 008 203 000ns (GuestNow=1 650 184 166 971 021 000 ns GuestLast=1 650 187 755 979 224 000 ns fSetTimeLastLoop=true ) 2022-04-17 09:48:00 (18912): Creating new snapshot for VM. 2022-04-17 09:48:07 (18912): Checkpoint completed. 2022-04-17 09:58:10 (18912): Creating new snapshot for VM. 2022-04-17 09:58:17 (18912): Deleting stale snapshot. 2022-04-17 09:58:17 (18912): Checkpoint completed. 2022-04-17 10:08:21 (18912): Creating new snapshot for VM. 2022-04-17 10:08:28 (18912): Deleting stale snapshot. 2022-04-17 10:08:28 (18912): Checkpoint completed. 2022-04-17 10:18:32 (18912): Creating new snapshot for VM. 2022-04-17 10:18:38 (18912): Deleting stale snapshot. 2022-04-17 10:18:39 (18912): Checkpoint completed. 2022-04-17 10:28:42 (18912): Creating new snapshot for VM. 2022-04-17 10:28:49 (18912): Deleting stale snapshot. 2022-04-17 10:28:49 (18912): Checkpoint completed. 2022-04-17 10:38:53 (18912): Creating new snapshot for VM. 2022-04-17 10:39:00 (18912): Deleting stale snapshot. 2022-04-17 10:39:00 (18912): Checkpoint completed. 2022-04-17 10:46:50 (18912): VM state change detected. (old = 'running', new = 'paused') 2022-04-17 13:15:24 (18912): Preference change detected 2022-04-17 13:15:24 (18912): Setting CPU throttle for VM. (100%) 2022-04-17 13:15:25 (18912): Setting checkpoint interval to 600 seconds. (Higher value of (Preference: 600 seconds) or (Vbox_job.xml: 600 seconds)) 2022-04-17 13:15:25 (18912): VM state change detected. (old = 'paused', new = 'running') 2022-04-17 13:15:28 (18912): Guest Log: 01:17:00.201785 timesync vgsvcTimeSyncWorker: Radical host time change: 8 924 587 000 000ns (HostNow=1 650 197 727 910 000 000 ns HostLast=1 650 188 803 323 000 000 ns) 2022-04-17 13:15:38 (18912): Guest Log: 01:17:10.202876 timesync vgsvcTimeSyncWorker: Radical guest time change: 8 960 752 821 000ns (GuestNow=1 650 197 737 911 127 000 ns GuestLast=1 650 188 777 158 306 000 ns fSetTimeLastLoop=true ) 2022-04-17 13:17:29 (18912): Creating new snapshot for VM. 2022-04-17 13:17:36 (18912): Deleting stale snapshot. 2022-04-17 13:17:36 (18912): Checkpoint completed. 2022-04-17 13:20:34 (18912): VM state change detected. (old = 'running', new = 'paused') 2022-04-17 14:39:02 (18912): Guest Log: 01:22:00.215576 timesync vgsvcTimeSyncWorker: Radical host time change: 4 717 136 000 000ns (HostNow=1 650 202 741 159 000 000 ns HostLast=1 650 198 024 023 000 000 ns) 2022-04-17 14:39:02 (18912): VM state change detected. (old = 'paused', new = 'running') 2022-04-17 14:39:12 (18912): Guest Log: 01:22:10.215960 timesync vgsvcTimeSyncWorker: Radical guest time change: 4 723 235 627 000ns (GuestNow=1 650 202 751 159 416 000 ns GuestLast=1 650 198 027 923 789 000 ns fSetTimeLastLoop=true ) 2022-04-17 14:45:59 (18912): Creating new snapshot for VM. 2022-04-17 14:46:06 (18912): Deleting stale snapshot. 2022-04-17 14:46:06 (18912): Checkpoint completed. 2022-04-17 14:49:14 (18912): VM state change detected. (old = 'running', new = 'paused') 2022-04-17 16:08:06 (18912): VM state change detected. (old = 'paused', new = 'running') 2022-04-17 16:08:09 (18912): Guest Log: 01:32:10.240977 timesync vgsvcTimeSyncWorker: Radical host time change: 4 741 447 000 000ns (HostNow=1 650 208 088 717 000 000 ns HostLast=1 650 203 347 270 000 000 ns) 2022-04-17 16:08:19 (18912): Guest Log: 01:32:20.241766 timesync vgsvcTimeSyncWorker: Radical guest time change: 4 747 533 387 000ns (GuestNow=1 650 208 098 717 800 000 ns GuestLast=1 650 203 351 184 413 000 ns fSetTimeLastLoop=true ) 2022-04-17 16:14:53 (18912): Creating new snapshot for VM. 2022-04-17 16:15:00 (18912): Deleting stale snapshot. 2022-04-17 16:15:00 (18912): Checkpoint completed. 2022-04-17 16:15:10 (18912): Status Report: Elapsed Time: '6000.292812' 2022-04-17 16:15:10 (18912): Status Report: CPU Time: '5995.921875' 2022-04-17 16:25:04 (18912): Creating new snapshot for VM. 2022-04-17 16:25:12 (18912): Deleting stale snapshot. 2022-04-17 16:25:13 (18912): Checkpoint completed. 2022-04-17 16:35:16 (18912): Creating new snapshot for VM. 2022-04-17 16:35:23 (18912): Deleting stale snapshot. 2022-04-17 16:35:23 (18912): Checkpoint completed. 2022-04-17 16:45:27 (18912): Creating new snapshot for VM. 2022-04-17 16:45:34 (18912): Deleting stale snapshot. 2022-04-17 16:45:34 (18912): Checkpoint completed. 2022-04-17 16:55:38 (18912): Creating new snapshot for VM. 2022-04-17 16:55:45 (18912): Deleting stale snapshot. 2022-04-17 16:55:46 (18912): Checkpoint completed. 2022-04-17 17:05:49 (18912): Creating new snapshot for VM. 2022-04-17 17:05:55 (18912): Deleting stale snapshot. 2022-04-17 17:05:56 (18912): Checkpoint completed. 2022-04-17 17:15:59 (18912): Creating new snapshot for VM. 2022-04-17 17:16:07 (18912): Deleting stale snapshot. 2022-04-17 17:16:08 (18912): Checkpoint completed. 2022-04-17 17:26:12 (18912): Creating new snapshot for VM. 2022-04-17 17:26:21 (18912): Deleting stale snapshot. 2022-04-17 17:26:21 (18912): Checkpoint completed. 2022-04-17 17:36:25 (18912): Creating new snapshot for VM. 2022-04-17 17:36:32 (18912): Deleting stale snapshot. 2022-04-17 17:36:32 (18912): Checkpoint completed. 2022-04-17 17:46:35 (18912): Creating new snapshot for VM. 2022-04-17 17:46:43 (18912): Deleting stale snapshot. 2022-04-17 17:46:44 (18912): Checkpoint completed. 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.089824 control Guest control service stopped 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.089898 control Guest control worker returned with rc=VINF_SUCCESS 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.090015 main Session 0 is about to close ... 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.090037 main Stopping all guest processes ... 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.090052 main Closing all guest files ... 2022-04-17 17:54:34 (18912): Guest Log: 03:17:28.251843 main Ended. 2022-04-17 17:54:35 (18912): VM is no longer is a running state. It is in 'poweredoff'. 2022-04-17 17:54:35 (18912): VM state change detected. (old = 'running', new = 'poweredoff') 2022-04-17 17:54:35 (18912): Powering off VM. 2022-04-17 17:54:35 (18912): Deregistering VM. (boinc_b700ee8ebff8eb66, slot#8) 2022-04-17 17:54:35 (18912): Deleting stale snapshot. 2022-04-17 17:54:35 (18912): Removing network bandwidth throttle group from VM. 2022-04-17 17:54:36 (18912): Removing VM from VirtualBox. 2022-04-17 17:54:41 (18912): Virtual machine exited. 17:54:46 (18912): called boinc_finish(0) </stderr_txt>

]]>

Reply to
Commander Kinsey

I looked at Java back in the late '90s. It wasn't too bad but as it grew performance went into the toilet. The answer was 'you need a newer, faster machine.'

Over twenty years of hardware improvements and Java apps still suck.

I bought an Osborne 1 in '81. It was a CP/M machine and came with 2 single side, single density 5 1/4" floppy drives for a massive 90 KB each. I later sent it back for the DD upgrade. Some how 90KB was enough to hold Wordstar, SuperCalc, or the BDS C compiler executables which happily ran in 64KB of RAM.

Somehow Turbo Pascal managed to compile so fast that at first I thought it was broken compared to BDS.

Reply to
rbowman

So they're finding out about body cams. No auto delete after a month either. It can be years before the case comes to trial and they have to produce the camera video.

Reply to
rbowman

Depends on what you mean by industry. For example I've been in the software 'industry' but went from programming biomedical equipment to aircraft fuel measurement and management to automated testing of copier power supplies, to semiconductor sputtering systems to....

My software skills remained the same but the applications had little to do with each other. I've been in my present job for over 20 years but I got old and slow and didn't need a new challenge every three or four years. What I have is plenty challenging as the technology changes.

Reply to
rbowman

It was a stretch, though; there was a 'toolbox' runtime library, and the rewrite of that was probably the first need, because it would normally be cached, and a two-stage emulator-plus-toolbox requirement used a LOT of cache. Apple had some PowerPC processors made with extra-large cache in the early days of the 68k-to-Power changeover, and eventually the OS'es became incompatible as emulations were dropped, first 68k and then Power code in the Intel years.

Reply to
whit3rd

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.