Author Topic: The Unofficial Old Geezer Programming Thread  (Read 2094 times)

0 Members and 1 Guest are viewing this topic.

Offline vtwin@cox.netTopic starter

  • Regular Contributor
  • *
  • Posts: 175
  • Country: us
The Unofficial Old Geezer Programming Thread
« on: November 14, 2018, 11:22:35 am »
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 :)

A hollow voice says 'PLUGH'.
 

Offline a59d1

  • Regular Contributor
  • *
  • Posts: 102
  • Country: us
Re: The Unofficial Old Geezer Programming Thread
« Reply #1 on: November 14, 2018, 11:41:25 am »
Was this possibly inspired by this thread? https://news.ycombinator.com/item?id=18442637
 

Offline sokoloff

  • Super Contributor
  • ***
  • Posts: 1799
  • Country: us
Re: The Unofficial Old Geezer Programming Thread
« Reply #2 on: November 14, 2018, 12:24:41 pm »
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.)
 
The following users thanked this post: vtwin@cox.net

Offline TerraHertz

  • Super Contributor
  • ***
  • Posts: 3958
  • Country: au
  • Why shouldn't we question everything?
    • It's not really a Blog
Re: The Unofficial Old Geezer Programming Thread
« Reply #3 on: November 14, 2018, 01:01:16 pm »
Collecting old scopes, logic analyzers, and unfinished projects. http://everist.org
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: The Unofficial Old Geezer Programming Thread
« Reply #4 on: November 14, 2018, 01:11:25 pm »
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.

 
The following users thanked this post: vtwin@cox.net

Offline capt bullshot

  • Super Contributor
  • ***
  • Posts: 3033
  • Country: de
    • Mostly useless stuff, but nice to have: wunderkis.de
Re: The Unofficial Old Geezer Programming Thread
« Reply #5 on: November 14, 2018, 02:47:29 pm »
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.
« Last Edit: November 14, 2018, 02:56:31 pm by capt bullshot »
Safety devices hinder evolution
 
The following users thanked this post: vtwin@cox.net

Offline xrunner

  • Super Contributor
  • ***
  • Posts: 7517
  • Country: us
  • hp>Agilent>Keysight>???
I told my friends I could teach them to be funny, but they all just laughed at me.
 

Offline bsudbrink

  • Frequent Contributor
  • **
  • Posts: 406
  • Country: us
Re: The Unofficial Old Geezer Programming Thread
« Reply #7 on: November 14, 2018, 04:25:20 pm »
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.
 

Online BrianHG

  • Super Contributor
  • ***
  • Posts: 7738
  • Country: ca
Re: The Unofficial Old Geezer Programming Thread
« Reply #8 on: November 14, 2018, 04:40:17 pm »
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.
« Last Edit: November 14, 2018, 04:41:59 pm by BrianHG »
 

Online coppercone2

  • Super Contributor
  • ***
  • Posts: 9450
  • Country: us
  • $
Re: The Unofficial Old Geezer Programming Thread
« Reply #9 on: November 14, 2018, 05:07:49 pm »
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.

Holy shit that is a fucking nightmare.  :-DD
 

Offline IanMacdonald

  • Frequent Contributor
  • **
  • Posts: 943
  • Country: gb
    • IWR Consultancy
Re: The Unofficial Old Geezer Programming Thread
« Reply #10 on: November 14, 2018, 05:18:34 pm »
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.

 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: The Unofficial Old Geezer Programming Thread
« Reply #11 on: November 14, 2018, 05:59:48 pm »
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
   - execute

What 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 rest
if 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.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 
The following users thanked this post: sokoloff

Online Messtechniker

  • Frequent Contributor
  • **
  • Posts: 782
  • Country: de
  • Old analog audio hand - No voodoo.
Re: The Unofficial Old Geezer Programming Thread
« Reply #12 on: November 14, 2018, 06:02:41 pm »
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 effort
getting the ASCII graphics right. :palm:. 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 and
more from 2014 onwards. I opted for "Profilab" because it is cheap and I can use it on an
occasional basis for quick results. My main interest was and is not to focus on
programming since I am more of an analogue hardware bloke not wanting to be
completely distracted by programming. Although this is happing more and more  :scared:
Agilent 34465A, Siglent SDG 2042X, Hameg HMO1022, R&S HMC 8043, Peaktech 2025A, Voltcraft VC 940, M-Audio Audiophile 192, R&S Psophometer UPGR, 3 Transistor Testers, DL4JAL Transistor Curve Tracer, UT622E LCR meter
 

Offline Towger

  • Super Contributor
  • ***
  • Posts: 1645
  • Country: ie
Re: The Unofficial Old Geezer Programming Thread
« Reply #13 on: November 14, 2018, 06:10:42 pm »
1996 Still updated and used by hundreds of companies today.  Some of the code originated in the DOS version, from the mid 80s.
 

Offline med6753

  • Super Contributor
  • ***
  • Posts: 11313
  • Country: us
  • Tek nut
Re: The Unofficial Old Geezer Programming Thread
« Reply #14 on: November 17, 2018, 01:14:27 am »
Stone Tablet 3.1 BC although I did help develop Stone Tablet 95 BC.  :-DD
An old gray beard with an attitude.
 
The following users thanked this post: vtwin@cox.net


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf