The Unofficial Old Geezer Programming Thread - Page 1
Forum section: electronics / general

author: vtwin@cox.net
author_rank: Regular Contributor
timestamp: November 14, 2018, 11:22:35 am
content: Okay all you old geezers (like me!)...What's the oldest piece of software you developed which is still in production use today... and, are you still actively maintaining it?For me, I wrote a secured digital image management system for a municipal police department back in the days of Access 95. Digital cameras were new, the whole concept of police departments abandoning film was new, and the case law for the admissibility of digital images had not yet been determined (e.g. how do you ensure chain of custody of a digital photo when there is no negative? What's to say you didn't photoshop that picture you're submitting into evidence at the trial?)From this, was born the Secured Digital Image Management System. The camera in use by detectives was a Minolta RD-175, and my program would scan the PCMCIA hard disk in the camera to retrieve the pictures which, along with a case number, keywords, and other metadata, was stored in a SQL Server 6.5 database.Program is still in active use today. Today, there are over 2 million cases in the system with over 100 million photographs.Of course, since then, the program was updated -- first to Access 97, later to Access XP, and then finally a complete re-write to the .NET framework around 2010. It's been 20 years since I was employed there, but they keep calling me every couple of years to make a feature enhancement, upgrade to a newer version of the .NET framework, or migrate the database to a newer version of SQL Server. And, naturally, the camera technology and retrieval systems are different -- everything in sdcard based now, so in reality the entire system is sort of moot since you could technically edit the picture on the sdcard prior to my program pulling in the data... but the guys on the force still find it the easiest way to manage the tens of thousands of evidentiary photographs they take on a monthly basis.... (and they have looked around for other solutions).Since I was employed there in 95 when the Access version was written, they technically own that... but the .NET version was a complete rewrite from the ground up, so I own that code, not them, so they keep coming back for more

author: a59d1
author_rank: Regular Contributor
timestamp: November 14, 2018, 11:41:25 am
content: Was this possibly inspired by this thread?https://news.ycombinator.com/item?id=18442637

author: sokoloff
author_rank: Super Contributor
timestamp: November 14, 2018, 12:24:41 pm
content: I have code of mine running in MacOS and Microsoft Truetype subsystems since about 1991 and 1992, respectively.(Obviously, that's not nearly a solo effort.)The thing I'm most proud of (and that is/was a solo effort) are two business monitoring tools that still run front-and-center in our network operations center. First one built around 2004 and second one built around 2005. As far as I know, the only maintenance that's been done since 2006 has been updating the compiler version and recompiling for new versions of the .Net framework. Tools are visualizations and early-detection for faults on our e-commerce system for a $1.5B company. (That company is now a subsidiary and I work for the parent company now, but I still walk by the NOC every now and again and see the tools running there.)

author: TerraHertz
author_rank: Super Contributor
timestamp: November 14, 2018, 01:01:16 pm
content: Quote from: a59d1 on November 14, 2018, 11:41:25 amMy God.

author: Howardlong
author_rank: Super Contributor
timestamp: November 14, 2018, 01:11:25 pm
content: I have quite a lot of backend stuff that I wrote from 1992 that is still used to maintain and administer retail funds for several large financial institutions. In those days, 3270 screens were standard desktop furniture in the sector, but increasingly PCs were taking over. This was a client server app originally, both client and server on OS/2. The back end was ported to Windows NT 3.51 around 1996, and shortly afterwards the front end was ported to NT 4.0 Workstation. In 2001, it was ported to C# and was used as part of a keynote demonstration at Technet Barcelona around that time. We had to pre-load all the screens before the demo because the JIT compilation was so sh!t. In those days, there was no option to pre-compile. The backend is all SQL Server, and was originally v1.1 16 bit on OS/2 1.3. That backend code is still used to this day, albeit on 64 bit Windows.The biggest problem I encountered with it was in trying to port from SQL Server 6.5 to SQL Server 2000, where the optimiser had been completely re-written in the interim after the Microsoft break from Sybase. There were a few minor syntax changes, but that was nothing compared to the work I had to put in to make it perform well. The new optimiser turned out to be a bit too clever for its own good. Whenever you hear "self tuning", rub your hands with glee, because while it might work 99% of the time, making it behave itself in edge cases is a different problem.By about 1995, it had become the biggest player in the segment, eventually managing a total of around $100b funds at one time. Around 2005, competitors were encroaching on market share. It was initially offered as a software product, but by far the most customers signed on as software-as-a-service, not that the term had been coined at the time.It was one of those projects that became a victim of its own success. It suffered maintenance paralysis, with multiple forks, and sh!t loads of bolted on ad hoc feature goodness sold by well meaning sales people who didn't have to support it or develop it.It's still in quite widespread use, but until very recently I'd assumed it was just in maintenance. A couple of weeks ago I discovered from some old colleagues who're still working on it that it's gained somewhat of a renaissance, with more sales in the past couple of years than for the entire decade previously.

author: capt bullshot
author_rank: Super Contributor
timestamp: November 14, 2018, 02:47:29 pm
content: About a year or two ago, I've seen a measurement device for sale on the EvilBay, in working condition including a lot of accessoires. Nothing uncommon, there are lots of measurement devices for sale every day. But this particular device was developed (hardware and firmware wise, including some PC based software) by me, starting 1992 in my first job. The devices were built and software maintained to around mid 2000's. For some later developed devices, but still before 2000 and around 2000, I'd be still able to build firmware releases, though no more required by anyone.The first device I've built that was productively used for a prolonged time (again some combination of embedded software and hardware) dates a few years before 1992. Only two of them were built, and it was built for a very special use case, storing Excellon (Drill data) files for an CNC automated PCB drilling machine on floppy disks instead of some kind of tapes. At some point, I've lost contact to this user (a small PCB company), but for some reason that I can't remember, I visited them many years later and saw these boxes again. I don't remember when this visit was, but I remember beeing surprised seeing them still in use.Around 2005, I wrote some C programs and scripts, running an SQL based automated calibration system. Long time forgotten, I was asked about half a year ago to check the system and give some support to move it to another place. Luckily someone else had stuffed the old "server" that is required to run the system into a virtual machine before.

author: xrunner
author_rank: Super Contributor
timestamp: November 14, 2018, 03:08:11 pm
content: Quote from: TerraHertz on November 14, 2018, 01:01:16 pmGulp ...

author: bsudbrink
author_rank: Frequent Contributor
timestamp: November 14, 2018, 04:25:20 pm
content: I worked for the US Social Security Administration in 1982, developing a system to track benefit appeals. When I worked on it, the target platforms were WANG VS100 minis and OIS multi-user word processing systems. The development environment of choice, pushed by WANG, was their own custom BASIC, so that's what we used. I heard, about 5 years ago that, while the WANG hardware was long gone, a good bit of the platform independent "business logic" original BASIC code was still in use. That gave me pause. I am proud to say that all the code I wrote used 4 digit years so there were no Y2K problems with it. There was another reason for that, in 1982 there were still a fare number of living people with birth dates in the 1800s.

author: BrianHG
author_rank: Super Contributor
timestamp: November 14, 2018, 04:40:17 pm
content: Though I haven't kept my oldest projects, I still program in Basic using this 'FreeBasic' compiler:https://www.freebasic.net/Whatever I programmed allowed me to generate 1 code which would run on Windows 32bit, MSDos, and Linux identically.I still use a lot of code I developed with it over a decade ago, including chart logging software, many RS232 data logging, display, plotting and controller tools for multiple MCU projects, my exercise bike log and management, file format converters, a data graphing printing utility. I know there are better tools to do these things today, but I've been programming in Basic since having my Atari 800 back in 1982.

author: coppercone2
author_rank: Super Contributor
timestamp: November 14, 2018, 05:07:49 pm
content: Quote from: bsudbrink on November 14, 2018, 04:25:20 pmHoly shit that is a fucking nightmare.

author: IanMacdonald
author_rank: Frequent Contributor
timestamp: November 14, 2018, 05:18:34 pm
content: Wrote a wordsearch puzzle creator in about 1991 that was known to be in use by a leading newspaper sometime around 2007/8. Might still be in use, who knows? Not the only one of its kind, but has the advantage it can solve the puzzles too and ensure there is only one correct answer.

author: free_electron
author_rank: Super Contributor
timestamp: November 14, 2018, 05:59:48 pm
content: I wrote the firmware loader in use in almost all DSL modems ( both sides of the line ) in the world. About 700 bytes of ARM7 code. Uart based (115200 baud) protocol that let's you load binary file straight into ram , then execute it.Booting is a 2 stage operation :Powerup : system checks 'Boot' hardware pin.- If the pin is set : copy flash top sector into ram and execute. Whatever is there is now responsible for loading the rest- if the pin is clear : open uart and wait for commands. commands include- set address- receive block (64 bytes). address pointer increments automatically- get block (read back last 64 bytes). address pointer does not decrement- set start vector- executeWhat that does is allow you to upload your own bootcode. you can tell the loader where to write chunks of code. then instruct it where to jump.it is basically the same idea of booting a computer from a floppy disk.if there is a floppy (pin is set) : read first sector into ram and run it. Whatever was loaded is now responsible to load the restif there is no floppy : wait for someone to feed you program over the uart , received in chunks. Then execute that one.The loader initializes the SDRAM controller, and sets up the hardware so it can get the remainder of the firmware.Stored in ROM. None of that foo-foo reprogrammable stuff. Hard MASK rom.The serial protocol and interface is part of the DSL standard now.If you have a DSL modem : go to the DSL settings and query the DSLAM. if it replies Alcatel: your line was booted using my code.Don't know if this counts , but in the early days of the internet i wrote the I2C FAQ. i got contacted by a (then) small company with a question to debug some code on a microcontroller that had to talk I2C (SMbus). i found the bug , rewrote their state machine (was like 50 lines of code) . It worked and they were happy. The company ? Synaptics.

author: Messtechniker
author_rank: Frequent Contributor
timestamp: November 14, 2018, 06:02:41 pm
content: Not being much of a programming guy, I wrote in Dec. 26, 1999 - looks like I had a lot of spare time then -a Turbobasic program for calculating the resistors and output voltage around the LM 317.Programming the calculation bit was easy. I spent most of the programming effortgetting the ASCII graphics right.. Never published it.Didn't do much programming since then because I was simply not interested.Resumed a bit of programming with "Profilab" around 2009 andmore from 2014 onwards. I opted for "Profilab" because it is cheap and I can use it on anoccasional basis for quick results. My main interest was and isnotto focus onprogramming since I am more of an analogue hardware bloke not wanting to becompletely distracted by programming. Although this is happing more and more

author: Towger
author_rank: Super Contributor
timestamp: November 14, 2018, 06:10:42 pm
content: 1996 Still updated and used by hundreds of companies today. Some of the code originated in the DOS version, from the mid 80s.

author: med6753
author_rank: Super Contributor
timestamp: November 17, 2018, 01:14:27 am
content: Stone Tablet 3.1 BC although I did help develop Stone Tablet 95 BC.