Lots of features, sure, but elegant? I've always felt like excel was about as far as you could get from elegant, especially once you want to do anything more than data entry and simple charts.
Elegant software doesn't normally need an interest group dedicated specifically to preventing people from misusing it. http://www.eusprig.org/
I recently had to do a bunch of currency conversion for my tax accounting. I had hundreds of transactions, and I needed to set the right exchange rate for each transaction, based on the date of the transaction. This took just a couple of minutes to do in Excel. The solution - a simple Excel formula that compared two rows – was indeed, extremely elegant. Excel enables this type of elegant calculating all the time.
I agree. The declarative/functional nature of spreadsheet formulas is certainly elegant, even if you might not say the same about Excel as an application overall. The same could be said about other spreadsheets (e.g Google Sheets).
I'm a definite 'excel-apologist' and think Excel is brilliant and incredibly powerful when used correctly, so the below may be biased but...
> Elegant software doesn't normally need an interest group dedicated specifically to preventing people from misusing it. http://www.eusprig.org/
Plenty of the other software listed has user-error misuses (For instance C is listed, and by the same standard it could be considered responsible for more software vulnerabilities than anything else!).
Sure there are errors in spreadsheets, but as the alternative is often calculating something by hand or asking similarly-trained users to write a python scripts, I think both those options probably create more errors.
Looking at the 'horror stories' listed on that website:
* The first listed is about the UK government using a version of Excel that is over 10 years old, with an issue that would not have happened if they updated the software.
* The third listed is because someone ENTERED incorrect information into a procurement spreadsheet (they copied the specification for a standard bed in rather than a critical care bed).
* The fourth is user input error - they input a fund as Dollars rather than Euros (how is this Excel's fault?)
* The fifth and sixth talk about logic errors - one with hard-coding a value and another with using 'cumulative mileage totals rather than running calculations on a sample average for vehicles'.
I agree that spreadsheets can have issues, but most of these can be mitigated by setting up sheets properly and I haven't really seen a compelling replacement for a spreadsheet for the sorts of stuff it gets used for.
The real problem with spreadsheets is a lack of training - I would estimate less than 20% of users know how to turn on cell validation, less than 10% know how to write a dynamic array formula, and less than 5% know how to use PowerQuery. It's like asking a bunch of people to write python code, but only 10% of users know how to write a loop, and then we are surprised that there are issues.
Besides, if you input a fund into a fancy financial package with the wrong currency it will cause the same issues.
Excel has an unrealistic barrier to performance to meet if we point to the fact that a desktop spreadsheet package is not good at being used for DNA and amino acid analysis.
We don't expect any other off-the-shelf technology to meet such a wide variety of use-cases, and somehow I think the statement 'excel is bad at processing bioinformatics data' speaks a large amount about how pervasive and flexible it is.
Besides, in reality Excel actually can handle the data perfectly fine if the data is brought in correctly (i.e. Data -> Get Data and using PowerQuery rather than just importing a file and hoping Excel works out the types correctly).
If the argument is feature:[something else] ratio, then I might be able to consider it, FSVO something else, such as "UI complexity" or "learning cost". Partly in response to sibling posts, the PP definitely makes me think twice about why I'm willing to call PostgreSQL elegant but pause a bit harder to evaluate Excel.
Yes, I think maybe the original VisiCalc was elegant, even if far less featureful. It was a game-changer, one of the first general purpose PC applications that let users do row/column based computing without programming, and along with word processing was the software that underpinned the explosion of PC use in business.
I taught Lotus 1-2-3 for a while, so probably had well above average familiarity with it.
And then in 1987, I opened Excel 1.0 on a Mac SE for the first time. Was blown away at how elegant that felt. Later versions seemed to loose that original elegance as features were added.
Turbo Vision/Turbo Pascal for MS-DOS. Borland put together one of the best instances of an object oriented library that just worked. The follow up with Delphi for Windows was the most productive environment I have ever experienced, until I was priced out of it in their pivot to "Enterprise" customers.
Nothing since is anywhere near as productive. Lazarus is ok, but the documentation is horrible, (almost non-existent, only doc-strings in many cases) which makes the system far less useful.
I cut my teeth on Borland Pascal and later launched my career with Borland C/C++ tools. I love JetBrains these days but not as much as I remember loving Borland!
Related: I did a lot of WinForms programming in C# when I was a tools programmer at EA and I don't know if I've ever been as productive as during that time. The whole API was really well thought out, Visual Studio was fast, C# was a beautiful language.
There's Lazarus project (https://www.lazarus-ide.org/) - which is a Delphi compatible IDE. I've used it once to build a simple UI app, and it was a real nostalgic look back in time. Not to mention that it was extremely simple to build the app.
Can you give an example? I’ve never seen it myself. What do you find the most impressive about it? Any links where those parts can be seen in action? Also, what would be the closest competitor, and in what regard are they worse?
I'm impressed by how polished everything looks. As a person who does UX / product design, their working software looks better than most designer's portfolio mockups.
I'm impressed by how fast and snappy everything works or feels.
I'm impressed by how rich and custom tailored their UI component library is.
I'm impressed by how focused and tailored their UI for job at hand.
I'm impressed by how every single page in their application looks beautiful, not just a handful.
They actually have all their React UI library published as opensource here. https://blueprintjs.com/
If there's anyone from pltr reading this, good job. Your design people are amazing.
I love utilities that quietly work, and just accept whatever workflow I throw at them.
OwnTracks is an app that logs your position and sends it somewhere else. It has been running on my phone for like 2 years without issues, and talks to a server I wrote myself.
FolderSync syncs folders on my phone to remote storage. It's super flexible and generally just works. The conditions for syncing are highly configurable. I lament the lack of a similar utility on Mac - basically an rsync+cron UI.
I have set and forgotten it for a few things here and there, like making sure the photos I take on my phone are backed up and available on my laptop as soon as they're on the same network.
Nim. It's just so quick and easy to write high performance code. That's why I'm writing a web framework for it, soon to be released: https://github.com/jfilby/nexus
Redis. The interface is quickly obvious using telnet (which makes all clients pretty obvious). The documentation is both succinct and complete. All operations are listed with their big-O notation.
Redis's interface and docs are a joy to work with. Everything just feels so straightforward and uncomplicated. The config file stuff gets a bit weirder, but it's still pretty easy.
I just loaded 4.6G of json into an in-memory sqlite database in about 20 lines of Python. It isn't just for data storage, it is also great for quick adhoc analysis.
I honestly eats most people's "big data" for breakfast. Combined with datasette for turning your ad-hoc queries an api of sorts it's like a superpower.
The biggest testament to the quality of the numpy API is that it effectively became a standard that's replicated across other libraries like TensorFlow, PyTorch and JAX.
That's not `calc.exe`. I think windows doesn't ship with calc.exe anymore. The fair comparison would be the last version of mIRC that was current when the last version of calc.exe was shipped. I don't believe that mIRC would use less RAM than that... Certainly not when you were actually USING it! (including reconfiguring the size of your scrollback, for example..)
Keyboard Maestro. It’s a tool for automating common tasks on a Mac. A real programming language is certainly more elegant for writing programs. But what I find elegant about Keyboard Maestro is that it lets me add programming logic to any application on my Mac, quick and dirty.
I love Keyboard Maestro's "Click on Found Image" action. Definitely quick and dirty, but it's great for ad-hoc web page automation when I can't be bothered to knock something up in puppeteer etc.
421 comments
[ 2.5 ms ] story [ 423 ms ] threadElegant software doesn't normally need an interest group dedicated specifically to preventing people from misusing it. http://www.eusprig.org/
> Elegant software doesn't normally need an interest group dedicated specifically to preventing people from misusing it. http://www.eusprig.org/
Plenty of the other software listed has user-error misuses (For instance C is listed, and by the same standard it could be considered responsible for more software vulnerabilities than anything else!).
Sure there are errors in spreadsheets, but as the alternative is often calculating something by hand or asking similarly-trained users to write a python scripts, I think both those options probably create more errors.
Looking at the 'horror stories' listed on that website:
* The first listed is about the UK government using a version of Excel that is over 10 years old, with an issue that would not have happened if they updated the software.
* The third listed is because someone ENTERED incorrect information into a procurement spreadsheet (they copied the specification for a standard bed in rather than a critical care bed).
* The fourth is user input error - they input a fund as Dollars rather than Euros (how is this Excel's fault?)
* The fifth and sixth talk about logic errors - one with hard-coding a value and another with using 'cumulative mileage totals rather than running calculations on a sample average for vehicles'.
I agree that spreadsheets can have issues, but most of these can be mitigated by setting up sheets properly and I haven't really seen a compelling replacement for a spreadsheet for the sorts of stuff it gets used for.
The real problem with spreadsheets is a lack of training - I would estimate less than 20% of users know how to turn on cell validation, less than 10% know how to write a dynamic array formula, and less than 5% know how to use PowerQuery. It's like asking a bunch of people to write python code, but only 10% of users know how to write a loop, and then we are surprised that there are issues.
Besides, if you input a fund into a fancy financial package with the wrong currency it will cause the same issues.
We don't expect any other off-the-shelf technology to meet such a wide variety of use-cases, and somehow I think the statement 'excel is bad at processing bioinformatics data' speaks a large amount about how pervasive and flexible it is.
Besides, in reality Excel actually can handle the data perfectly fine if the data is brought in correctly (i.e. Data -> Get Data and using PowerQuery rather than just importing a file and hoping Excel works out the types correctly).
And then in 1987, I opened Excel 1.0 on a Mac SE for the first time. Was blown away at how elegant that felt. Later versions seemed to loose that original elegance as features were added.
Nothing since is anywhere near as productive. Lazarus is ok, but the documentation is horrible, (almost non-existent, only doc-strings in many cases) which makes the system far less useful.
https://github.com/magiblot/tvision
It still is. (And Blazor is pretty cool, too.)
Although one might argue it to be a case of really elegant documentation and literate programming.
No, but when they arrest you, you see the effect :)
GPalantir is definitely being more open with their demo now, so there are some good ones on their youtube channel.
You can skim through.
https://www.youtube.com/watch?v=uF-GSj-Exms
I'm impressed by how polished everything looks. As a person who does UX / product design, their working software looks better than most designer's portfolio mockups.
I'm impressed by how fast and snappy everything works or feels.
I'm impressed by how rich and custom tailored their UI component library is.
I'm impressed by how focused and tailored their UI for job at hand.
I'm impressed by how every single page in their application looks beautiful, not just a handful.
They actually have all their React UI library published as opensource here. https://blueprintjs.com/
If there's anyone from pltr reading this, good job. Your design people are amazing.
OwnTracks is an app that logs your position and sends it somewhere else. It has been running on my phone for like 2 years without issues, and talks to a server I wrote myself.
FolderSync syncs folders on my phone to remote storage. It's super flexible and generally just works. The conditions for syncing are highly configurable. I lament the lack of a similar utility on Mac - basically an rsync+cron UI.
I have set and forgotten it for a few things here and there, like making sure the photos I take on my phone are backed up and available on my laptop as soon as they're on the same network.
- Propellerheads Reason, a sweet DAW
- emacs, a text editor so elegant it’s a real OS
- Procreate, the nicest iOS drawing app
On a similar tangent, NodeRED is also an interesting software to build workflow-based automation visually.
Telix
QEdit
A full-featured IRC client for Windows that includes an entire scripting language and yet it consumes less RAM than calc.exe.
But is it really true that vanilla mIRC consumes less RAM than calc.exe...?
That'd be impressive, if I could believed that!
calculator.exe is at 74 MB working set, 24 MB Memory (private set), 50 MB Memory (shared working set), 48 MB commit size.
mIRC.exe is at 31 MB working set, 13 MB Memory (private set), 18 MB Memory (shared working set), 38 MB commit size.
Doesn't matter which value you use for "How much memory does this program use?". mIRC is smaller in all of them.