Lotus 1-2-3 Ported To Linux (techradar.com) 91
Lotus-1-2-3, an ancient spreadsheet program from Lotus Software (and later IBM), has been ported to a new operating system. drewsup writes: As reported by The Register, a Lotus 1-2-3 enthusiast called Tavis Ormandy (who is also a bug-hunter for Google Project Zero), managed to successfully port the program onto Linux, which seems to be quite the feat of reverse engineering. It's important to stress that this isn't an emulated program, but rather the original 1990 Lotus 1-2 -- for x86 Unix running natively on modern x86 Linux.
uh... (Score:2)
aren't POSIX-compliant programs written in C reasonably easy to port between UNIX/Linux? I'd imagine that it's mostly a matter of figuring out what few libraries aren't included on the newer OS that also need to be ported.
The last release of Lotus 1-2-3 came out more than twenty years ago. The version in the story came out long enough ago that someone could have started a career, worked that career, and retired with a pension before this port has been released.
I guess it's mildly interesting to some, but
Re:uh... (Score:5, Interesting)
https://lock.cmpxchg8b.com/lot... [cmpxchg8b.com]
more than mildly interestting, I'd love a spreadsheet without the bloat for large piles of data
Re:uh... (Score:5, Insightful)
Gnumeric perhaps?
Spreadsheets are very misused by people who don't realize that what they are doing with them is programming. But its a progamming without comments and without any structured subroutines, and absolutely full of go-to's.
Classic misuse is in models that give input into major investment decisions at big companies, where there seems to be the assumption that more detail means more accuracy means better forecasts. And actually the key points on which the forecasts turn are buried in a formula in line 256 of sheet 43... So the committee deciding on whether to go with it never debates it or even knows it exists.
Re: (Score:2)
Gnumeric is a bit chunky and its behavior on pressing enter is not very slick. I use Excel '97 when I need a simple spreadsheet, it works very well and has a lot of features but remains very light weight.
Re:uh... (Score:5, Interesting)
I've been the "excel guru" for the past 20 years in various 1st tier consulting/accounting companies...
I've also had the fortune/misfortune of using Lotus 123 (pretty recently actually)
I'd argue that Lotus, when compared with the most recent versions of excel, is actually superior in most respects though there's a bit of a learning curve as the formulas/entry is different
That said, I'd never recommend it because no one else uses it generally speaking - I've only "upgraded" from excel 2003 to 2010 (i.e., the least bad modern version I've found) since it's not supported in >= win 10 unfortunately (or at least not well supported despite HOURS of research/tweaking)
As for criticisms of doing things in spreadsheets, that's totally true - 98% of people grossly misuse spreadsheets but when used properly (and locked down/protected), they can be extremely powerful
lotus 1-2-3 had a good keyboard interface (Score:5, Insightful)
Lotus 1-2-3 had a thorough, reasonably well designed keyboard interface for the entire program, which made it remarkably fast to use once you were proficient with it. Modern software tends to be shipped with around half-of-a-story (if you're lucky) of how to use it via keyboard. They always prioritize a shallow initial learning curve, they don't care so much if it plateus out quickly.
Re:lotus 1-2-3 had a good keyboard interface (Score:5, Interesting)
I've seen sticker versions of it but I'm talking about a literal hunk of plastic that wrapped around all of the key sections. Made it pretty easy.
Re: (Score:2)
At least one can add in whatever shortcuts you want with macros in any of these applications thankfully
I wonder how the vba to javascript transition will be...I can't imagine vba won't be supported so I won't have to translate anything at least
Re: lotus 1-2-3 had a good keyboard interface (Score:1)
The / commands are so fast like / F(ile) R(etrieve)
I still use 2.01 several times a week. It just sucks that Microsoft is so horrible at backwards compatibility that you have to run it in a vm.
Re: (Score:1)
Re: (Score:3)
As an avid spreadsheet user and mediocre (being kind) programmer, I completely agree... BUT the reason why the spreadsheets are used is varying levels of detail are available and are easy to check. I did a project for a major bank that was to determine a path for $multi-Billions and multiple decades where our work product included about 500 pages of spreadsheet data. There was a team of about 10 people who checked our work on the bank's side, and even re-worked the information.
The key to using spreadsheet
Re: (Score:3)
This is what's great about the spreadsheet. I know a lot of developers hate them, but I'm convinced at this point that's mostly a mix of elitism and insecurity. Spreadsheets are empowering and surprisingly powerful.
Some of you might remember this: Spreadsheets: Functional Programming for the Masses [slideshare.net]
Wasn't the whole point of the microcomputer revolution to put the power of computers into the hands of ordinary people?
Re:uh... (Score:5, Insightful)
Looked at the slideshare link. I think what its missing is the social context. You have a committee, and its considering major investment decision. Business case on new product, for instance, or bidding on a license of some sort.
Imagine you are the planner, staff to the committee. What are you trying to do?
You will be most effective if they are clearly confronted with the key variables on which the merits of the case or proposal hangs. But in very common practice this is just about impossible, because what happens, the staff people are overawed by the size of the decision, and they figure that the more detailed their modelling the more accurate and useful it will be. But in fact what this does is conceal the critical variables from the decision makers.
This led an acquaintance, appointed to be in charge of business planning and strategy at a major European company, to issue an edict. The normal practice had been detailed models and long PowerPoint presentations and largely complete opacity.
His edict was that business cases coming before the management committee would consist of one page of summary, 5 pages of prose and a one page spreadsheet. To be presented with no more than 5 or six slides.
The effect was to focus the committee's discussion on things they knew from experience and could debate. Because the spreadsheet had of necessity to be very high level. But this means that the key elements could be questioned and debated. Just how likely were those volumes at those prices for those features? How risky was that timetable? What happened if.... And this last was super easy to answer.
I suspect the slideshare proposal would simply make business cases and models more opaque to the people who most need to understand them by embedding the key variables in functions.
The answer basically is not technical because the problem is not a technical one. Substitution of programming languages will not make much difference. This is not the problem. The problem is finding some way of presenting the key issues in a way that lets a senior management group bring their experience and judgment to bear on them.
Now, does this put the power of computers into the hands of ordinary people? I don't know. I don't see that as a relevant objective for business planners. I am also sure that if models are written in Haskell or C or whatever they will be equally opaque if what people are trying to do is similar. Maybe more opaque.
The problem is that lots of staff groups are trying to do the wrong thing. The aim is not detail, the aim is not accurate prediction through detail. The aim is to put your Joes into a position where they can give their best performance and best bring what skills they have to bear. Your success as a planner is best expressed as a percentage. Its the percentage of what they are capable of that you manage to enable.
The case of the 500 page spreadsheet? If it was a csv database, fine. I have used tab separated files to hold date, but always felt it was a case of 'getting away with it'. I don't think I would do 500 pages worth that way when sqlite is there waiting. But if it was a 500 page model? No, write it in a real programming language. And if its business case stuff, ask yourself very carefully how exactly this is going to help your Joes understand the dependencies and implications of the decision they are being asked for. I doubt after doing this that you will feel very comfortable with it. It will just be giving them the illusion of certainty, which comes from not being able to argue the issues.
Re: (Score:3)
I only use spreadsheets to crunch the raw numbers. Most recent big thing was analyzing switchport capacity/needs for hundreds of telecom closets whose existing switch and port count wasn't especially logical. With the next tech refresh I wanted to normalize to allow for actual needs for UPoE, MGig, and general PoE and simple port needs. I was able to get data out of the switches describing the types of PoE devices on their ports, ports with counters (ie have ever been used) and total ports, and to try to
Re: (Score:3)
I know a lot of developers hate them, but I'm convinced at this point that's mostly a mix of elitism and insecurity.
Maybe there's a great deal of that, but in my 20 years at this I've seen repeatedly that it's genuinely the tool that's the problem and not the abuse of the tool. Typically you run into a sheet that is a lynchpin of the business, that a certain staff member diligently enters information into and then CCs it around the business. And this persists for years and many decisions are made based on the output of the formulas contained therein. And then someone like me is copied in and I ask the dangerous question:
Re: (Score:2)
Yeah, this kind of use needs to stop. Once you are emailing a file around with multiple edit sources it doesn't make sense anymore. Fortunately, there are plenty of easy cloud products that simplify the migration... and if you want to self-host you can for a somewhat higher cost.
As for the spreadsheet errors, every good executive I have known writes their own personal check formulas in the margins of a printed copy to at least perform a sanity check.
Re: (Score:3)
This is what's great about the spreadsheet. I know a lot of developers hate them, but I'm convinced at this point that's mostly a mix of elitism and insecurity. Spreadsheets are empowering and surprisingly powerful.
Yes, but not exclusively. There is a lot of that. Just look at the hate heaped upon PHP, Javascript and in its day BASIC The hate for BASIC has more or less vanished as it's no longer in common use, and it's only left to old farts to defend its merits (and defend it I shall!).
There is a shit-ton
Re: (Score:2)
Very wise. I'm also a defender of BASIC. I had even mentioned it in my comment, in support of its use in spreadsheets, though I removed it as it seemed like too much of a digression. We've really lost something now that it's all but completely vanished. It's the only language I know of that someone with no knowledge of programming can apprehend almost immediately.
You're spot-on about tools that are easy to use / easy for beginners to use as well. It's why I've called Python the VB of the future, thoug
Re: (Score:2)
Very wise. I'm also a defender of BASIC.
I learned on BBC basic, then moved to QBasic.
We've really lost something now that it's all but completely vanished. It's the only language I know of that someone with no knowledge of programming can apprehend almost immediately.
I agree. There's something about it which was very well thought out.
You're spot-on about tools that are easy to use / easy for beginners to use as well. It's why I've called Python the VB of the future, though I maintain that it is only superf
Re: (Score:2)
I learned starting with a combination of BASICA, GW-BASIC, and, oddly, Lotus 1-2-3 (on a Tandy 1000-SX). I don't remember which was strictly first, but I do remember learning how to program macros in 1-2-3. As a kid, I gravitated more toward BASIC because I could make games there more readily than in 1-2-3. I used to transcribe games out of the back of magazines, which I credit for learning debugging better than most of my colleagues.
Anyway, just a reminiscence o
Re: uh... (Score:2)
Agreed. The additional benefit of this is you can write comments in adjacent cells to explain your work.
That am adding a sheet in which the file is explained helps. I've had to reverse engineer some fair complex files, sometimes discovering esoteric features I never even knew existed.
Re: uh... (Score:1)
Re:uh... (Score:4, Interesting)
Perhaps a decade ago, I booted up an old Apple II that my mother-in-law had purchased way back in the day (she handled most of the business side of the family farm). One of the programs she'd purchased with the computer was Microsoft's Multiplan, which I believe was the predecessor to Excel.
I fooled around with it for a little while, and found it interesting that this early 80s application seemed to offer pretty much all of the basic features the majority of people likely need a spreadsheet for. In (now) 40 years, the app has grown from tens of kilobytes to gigabytes in size - but the value it offers the typical consumer hasn't commensurately increased.
Re: uh... (Score:1)
Re: (Score:2)
Probabably mostly the same. Lotus 123 was written by Visicorp programmer who wrote Visicalc's Visitrend and Visiplot. Lotus has the visicalc menu structure.
Since written for 8 and 16 bit platforms I'm wondering if Visicalc limited to truly tiny spreadsheets?
Re: (Score:2)
Working for the government maybe. I started my career in 1988 and I'll be lucky if I can retire in another 10 years.
Re:uh... (Score:5, Informative)
Yes source code is generally portable. However in this case he got the original x86 unix executable to load and run on Linux using some elf hacking and writing some shim layers to account for some struct differences between old unix and modern Linux. Super cool nerdy stuff! Definitely worthy of being on Slashdot, at least the old community I used to know when Slashdot was at its prime.
And this article is apropros also as just recently I wanted to try to run an elf binary from an old FreeBSD 6 system on modern Linux Linux. I didn't get very far, and ended up hacking the binary to run on the latest FreeBSD, but his experiences with this old Lotus 1-2-3 binary give me some hope I might be able to do something similar here.
Re: uh... (Score:1)
You are right in everything you say. But the question remains - why? 21st century, who cares about this stuff anymore?
Re: (Score:3)
Re: (Score:1)
Re: uh... (Score:4, Interesting)
I guess I'm a little surprised that soneone is asking that question on slashdot! I suppose because he could and enjoyed the challenge. Does there have to be a reason? Like I said his success has inspired me to think I might be able to hack a proprietary freebsd binary to run under Linux.
Re: (Score:1)
Narcissism? Authoritarianism? I don't know. I just don't really understand the premise of questioning a person's desire to try something.
Re:uh... (Score:5, Insightful)
"I guess it's mildly interesting to some, but this is pretty damn niche even for Slashdot."
At least it's news for nerds if not stuff that matters.
I prefer it to the political, 3d or crypto any day of the week.
Comment removed (Score:5, Informative)
Re: (Score:2)
1. Lotus 1-2-3 was ported to C in the mid-1980s. In the 1980s, POSIX didn't exist (the first, barely adequate, spec came out in 1988), and "C" wasn't really standardized.
I was curious so it looked it up, the first finalized release of an ANSI C standard wasn't until 1989! Yowza.
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
POSIX doesn't have anything in the way of graphics as I recall. Though the original Lotus 1-2-3 on PC I think managed this with just text I/O, using the graphic characters. By 1990 I think they'd have gotten better, but many PCs at the time didn't have graphics cards.
Lotus 1-2-3 beat the pants off of Excel, not sure what it lost out to a worse product.
Re: (Score:2)
Re: (Score:2)
That is correct. Version 1 and 2 of Lotus 1-2-3 were written in assembly code. Therefore it also had problems using much memory, and it was very hard to convert it to make using more memory possible.
So version 3 was written in C. It could easily handle a lot more memory and run larger spreadsheets, but it was also a lot slower on old PC's.
The version which was ported to UNIX was version 3.
It's not C - it's binary, machine code (Score:3)
> aren't POSIX-compliant programs written in C reasonably easy to port between UNIX/Linux?
C is generally very easy to port - often requiring no changes at all. He didn't have the C code to start with. He had a compiled binary. A binary compiled for a different operating system. That's a completely different situation.
not really (Score:2, Insightful)
Re: uh... (Score:2)
As a GUI-based application, cross-platform/cross-operating system ports are no -trivial.
Migrating the 'engine' that drives the calculations was probably pretty straight-forward, but that's a relatively small part of the application AFAIK.
As a reminder, POSIX, and even 'modern' UNIX came into being well after Lotus 1-2-3 was written.
Re: (Score:1)
As a GUI-based application, cross-platform/cross-operating system ports are no -trivial.
GUI? I'm pretty sure Lotus 1-2-3 was CLI
https://pbs.twimg.com/media/Cm... [twimg.com]
Re: (Score:2)
I guess it's mildly interesting to some, but this is pretty damn niche even for Slashdot.
Niche nerdy stuff is literally why some of us are here. If all I wanted was to get the mainstream tech news, I could get it somewhere else faster.
Re: (Score:2)
should be peppy (Score:3)
without all the mass of bloat of excel or office calc I'd think it would be quite peppy for large spreadsheets. It has all the things I use in a spreadsheet like the horizontal and vertical lookups and grouped worksheets.
Re: (Score:2)
Depends on if it has a similar 32-bit version row and column limit that Excel had prior to the port to 64-bit.
My wife used Excel for data analysis and sometimes the sampling rate and duration that she'd have to work with wouldn't fit in a single Excel sheet.
Re: (Score:3)
Reading the guys notes and looking at code, I'm expecting this would have the limits of Lotus since the x86 C types aren't changed, I don't work with gigabyte sized spreadsheets
Re: (Score:2)
That is a perfect example where you need some programming to do data reduction or automated windowing rather than relying exclusively on a spreadsheet.
Re: (Score:2)
Excel, by MS, was the killer app on the Mac. It allowed the organization of data into different sheets and then calculations between them it was an order of magnitude more complex and very not peppy. Not due to bloat, but due the new fangled GUI that made it u
Re: (Score:3)
This is some pretty strong revisionism. In my opinion, Lotus 1-2-3 was the first truly business-grade spreadsheet. VisiCalc was stunning, but it was ported to the Apple, it wasn't native to that OS. As a consequence, it had all the usual bugs and limitations of any port. 1-2-3, however, was written from the ground up for the PC -- in assembler. It was very fast, indeed. Naturally it implemented the same model of a spreadsheet (as did all other competing products), but it most definitely wasn't "derivative",
Re: (Score:2)
Citation, please. This contradicts what I understood, which is that it was originally developed for the Apple 2 computer, requiring a min of 32k of RAM.
Re: (Score:2)
VisiCalc was originally written on a timeshare, actually, presumably one of the mainframes that those guys could get time on at MIT. My first use of VisiCalc was on an Apple IIe, I was working for an insurance company at the time, and it was just about the only app we ever ran on that machine, if I recall.
Here's a good source on the history of spreadsheets [thehistory...puting.net]:
"Frankston and Bricklin would build a visible calculator using 16k of space and that could fit on a floppy. They used a time sharing system and because t
Re: (Score:2)
I forgot to add that I never felt that any of those early spreadsheet apps were noticeably faster or slower than one another. Of much more concern was running out of memory space for rows, and the ridiculously expensive cost of disk space. At the level of your normal business office usage, the fact that an app was ported vs. natively coded made little practical difference. It did make a difference in the long run, however, since anything tailor-written had greater headroom and was more agile.
Re: (Score:2)
Ah... I see the misunderstanding. Yes, developed *ON* a timeshare, not developed *FOR* one.
The creators of Visicalc originally used a 6502 assembler on a timeshare system merely to *create* the code, then migrated that code over to the Apple 2 to be run. It was never ported to the Apple 2 in the sense that one might describe porting software from one OS to another.
Re: (Score:2)
davide marney is an idiot. He thinks the OS (Multics) the assembler ran on [history-computer.com] means VisiCalc was written for Multics -- which is of course total nonsense as confirmed by Dan Bricklin:
Re:should be peppy (Score:4, Informative)
> VisiCalc was stunning, but it was ported to the Apple, it wasn't native to that OS.
WTF are you talking about??? VisiCalc was written in 6502 assembly [twitter.com].
Specifically [history-computer.com]
Re: (Score:2)
Lotus 123 did not exist until 1983, and was made irre
Re: (Score:3)
Apple existed before Visicalc.
If the developers of Visicalc had made it for some other computer, things could have turned out very differently than what they did, Jobs himself remarked in an interview at the time that if Visicalc had been first developed for some other personal computer, they would have been interviewing someone other than him.
Re: (Score:1)
Apple existed before Visicalc.
Think you're misunderstanding. Nobody is claiming Apple didn't exist BEFORE visicalc.. But one can make the argument that Visicalc is WHY Apple sold so many units (i.e. why Apple became successful).
Multiplan (Score:3)
Re: (Score:3)
Multiplan was a pretty awesome piece of software. I ran it on a Tandy 16b upgraded to a 6000, with 1mb of RAM running Xenix. Providing you had a terminal with decent VT100 emulation, it was pretty nifty, and I actually developed a payroll calculator with lookup tables.
Thank God! (Score:3, Funny)
Now I can finally do my bills!
Re: (Score:2)
Oracle would like to have a word with you, conduct an audit.
Re: (Score:2)
Oracle suing over a use of a 30+ year old product it never came close to having thing zero to do with?
Sounds about right.
actual article link (Score:3)
https://lock.cmpxchg8b.com/lin... [cmpxchg8b.com]
Ancient? Yes, but ... (Score:2)
I actually still use it -- version 9.8 from 2002 -- on Windows 10 for my personal finance/budget tracking. I also still have a few WordPro documents too. They both run great except for the help system which uses the Help system/files Windows doesn't support anymore. I *know* I should port my workbook to something else, like LibreOffice, but it's non-trivial, with several sheets and charts, etc and I'm lazy. I'll get around to it once Windows 10 goes off support and I switch to using Linux full-time -- pr
Re: (Score:2)
Why do you feel you will be pushed off Windows 10 onto Linux if you didn't feel that way on Win7 or prior? Just curious mostly. I shifted full time to linux about a year before win7 EOLed. I do dual boot to an old win7 partition but that's just to play specific games that don't run nicely in linux or have some random bug I can't accept. Nothing important just games.
Re: (Score:2)
Why do you feel you will be pushed off Windows 10 onto Linux if you didn't feel that way on Win7 or prior? Just curious mostly.
All my systems (I have 5, w/3 in use) are way too old to run Windows 11, which I probably won't like anyway judging from reviews, but the 2 Windows systems run Win10 fine. As for why I haven't switched to Linux full-time already? Mostly inertia. My Ubuntu Mate 18.04 system (DIY: ASRock Z77 Ex3, Intel i7-3770 w/32 GB RAM) does have a Windows 10 VM too which runs pretty well and I'll probably keep that going forward even w/o updates. My other larger, currently unused, system is a Dell PowerEdge T110 w/32GB E
Re: (Score:2)
That's 1-2-3 *for Windows*, an almost totally different product with little resemblance to the DOS original.
The original 1-2-3 was a DOS app. 1-2-3 r3 was one of the first ever apps to use a DOS-extender for >640kB of RAM.
Re: (Score:2)
That's 1-2-3 *for Windows*, an almost totally different product with little resemblance to the DOS original.
The original 1-2-3 was a DOS app. 1-2-3 r3 was one of the first ever apps to use a DOS-extender for >640kB of RAM.
Yup I knew that, but thanks for the reminder -- the Windows version is also ancient (and no longer supported). :-)
Noting that I also used the original DOS versions of 1-2-3 way back in the day...
Re: Ancient? Yes, but ... (Score:2)
Ah, okay, fair enough then. :-)
I trained people on advanced use of the DOS version, back in the 1980s. I only played around with the Windows version a bit. TBH I preferred Quattro Pro.
Re: (Score:2)
TBH I preferred Quattro Pro.
Me too.
Congratulations! Fast Move! (Score:2)
Re: (Score:2)
Apples and kumquats.
You're putting a schedule and expectations on person doing something for fun and as a hobby? Wow.
C64 Microsoft Multiplan under Vice (Score:2)
I use the Commodore 64 version of Microsoft Multiplan on the Vice emulator on my Linux computers.
Really.
Multiplan is a nice basic spreadsheet and it runs really well under Vice.
Re: (Score:1)
Because Multiplan is a really nice (easy to use and understand) spreadsheet.
I wouldn't run my business with it (though a friend of mine who owned a garage did exactly that on a Commdore 64 in the 80's) but for making up an quick and easily understood table or bit of cross-multiplication or what-if's, Multiplan works very well indeed.
The C64 version loads almost instantly and Vice can snapshot the machine state for an instant return to where I left off.
In short, don't knock it before you've tried it. It's f
VisiCalc port (Score:2)
Honestly, I'm excited! (Score:1)
Ancient? (Score:2)
Did the Maya use it to keep track of their budget when building Chichen Itza?
Now bring back Xerox Ventura Publisher (Score:1)
Ancient? (Score:1)
"Ancient" applies to VisiCalc, not Lotus 1-2-3, young whippersnapper.
IBM's lasst customer? (Score:3)
Anyone remember Lotus Improv ?? (Score:1)
20+ year old news. (Score:1)
Re: (Score:1)
Lotus vs MS-Office (Score:1)
IBM acquired my employer, Candle, in 2004.
We were assigned to the Tivoli division.
Our new computer setup was deployed with the
You could still install the Lotus suite.
I found this intriguing, since the company had over 400,000 employees, and the Office product was certainly not free for IBM.
Lotus 1-2-3 (Score:1)