Speaking of crazy applications of Emacs... Long long time ago, my team was tasked with rebuilding an MBS analytics system for one of the leading fintech companies. The original system ran on DEC VAX and was written in VMS Pascal (let's just say, a very unique flavor of Pascal). Rewriting it from scratch was not an option (it would take decades to implement all that complexity and to make sure it worked correctly). Instead, we utilized a combination of tools that first transformed the Pascal code into the form that was closer to more popular Pascal dialects (which included using a Scheme compiler and (drum roll) Emacs in batch mode), applied a set of hand-made patches, translated into C using p2c, and finally built on Linux. As crazy as it sounds, it worked well enough to be used as a foundation for the next gen of mortgage analytics.
usrnm 108 days ago [-]
Once it's just regular Pascal, why translate it to C? Why not just keep it as is and compile with Free Pascal/Lazarus?
p_l 108 days ago [-]
Depending on the time frame, FreePascal/Lazarus might have simply been not available (or unknown) to the team.
I remember how in ~1997 at a science camp we used Turbo Pascal under DOS for most programming labs, and whenever pascal code was run on Linux machines we used p2c translator and compiled the resulting C code.
Sharlin 108 days ago [-]
Free Pascal’s initial release was in 1997. "Long long time ago" may be longer than that.
jdboyd 108 days ago [-]
Sounds like a story that should be submitted to the above linked website!
TheBlight 108 days ago [-]
TIL people were concerned with mortgage quality prior to 2008.
actionfromafar 108 days ago [-]
I am slightly disappointed that the solution was not to run a VAX emulator. :)
Postosuchus 108 days ago [-]
I don't think VAX emulators were the thing back then. :-) In fact, our target platform was a cluster of commodity DEC Alpha machines running an early version of RedHat Linux for AXP. I know for a fact, that we were the first system that employed Linux clusters in fintech.
ggm 108 days ago [-]
They weren't but .. if you were doing it now QEMU and OpenVMS would probably be the natural approach.
0x445442 108 days ago [-]
This is what Ticketmaster did. Up until a few years ago, and it’s probably still the case, they heart of their reservation system was written for the VAX in the 70’s. When they had to make the hardware/OS switch, rather than port, the went to an emulator.
Edit: spelling
nightowl_games 108 days ago [-]
Decades? Seriously?
Postosuchus 108 days ago [-]
Yes, absolutely. You will be shocked how complex CMOs might be just to calculate plain cashflow on a tranche (https://www.amazon.com/Handbook-Mortgage-Backed-Securities-7... is a great standard treatise on the topic). Add to this interest rate modeling and prepayment modeling - and we are talking serious logical complexity. And this is the area where people get REALLY pissed when you have bugs.
ggm 108 days ago [-]
If the bugs affect your shock preparedness, and liquidity status and mandated holdings/reserves, you might be in a world of hurt: Failing compliance can permit the feds to step in and seize the enterprise, if it's in the regulated space.
rbc 108 days ago [-]
There are times when I wonder if calling GNU Emacs an editor is really descriptive. Editing is just one window, to what's really an integrated Lisp development and runtime environment. Compare some Lisp Machine features to the GNU Emacs features:
Zmacs -> Emacs, Zmail -> Rmail (or Gnus), Symbolics Document Examiner -> Info, Lisp Machine Lisp -> Emacs Lisp (both children of Maclisp). There may be other examples that I'm not aware of.
GNU Emacs might have started as an editor, but it's certainly grown beyond that. Maybe its become a sort of Valinor, a realm for uprooted Lisp machine users to continue the craft.
AceJohnny2 108 days ago [-]
> GNU Emacs might have started as an editor, but it's certainly grown beyond that
Hence the old joke: "Emacs sure is a great operating system, pity it's missing a good text editor"
It has also inspired "Zawinski's Law: Every program attempts to expand until it can read mail" (Zawinski worked on both XEmacs and Netscape...)
john2x 108 days ago [-]
It has a good text editor now, thanks to evil-mode
cmrdporcupine 108 days ago [-]
the actual base standard emacs keybindings are great and always have been, esp if you have a real keyboard
p_l 108 days ago [-]
The fun thing is that a bunch of the oldest bindings are essentially a random sampling of keybinds used by different people when original TECO EMACS was coalescing into existence.
But a common pattern was that the systems majorly used with Emacs as the keybindings evolved all had mirrored bucky bits which means instead of using left pinky finger for Control key when hitting C-x C-f many would use right thumb for Control and left hand for X and F.
cmrdporcupine 108 days ago [-]
I mean, the other fun thing is that the vi keybindings are also a product of the really terribly anemic keyboard that the ADM-3A terminal it was developed for had, and was also a product of the conventions developed by line editors like 'ed'.
And so there's nothing virtuously ergonomic about the vim keybindings and people who try to make it seem like there's some UX genius there (and to be fair, also with emacs) are often involved in a rather elitist game of retcon.
Emacs at least evolved on systems that had much richer keyboards, and with the deliberate intent to make use of those extra keys but also make it possible for people to just muck with it and make it whatever they wanted.
In the late 80s, early 90s when I got my start on Unix... I specifically chose emacs over vi because it let me use exotic novelties like... arrow keys.
amszmidt 108 days ago [-]
The left pinky finger would not have been used for hitting left Control in Emacs back then, rather one would have used the left _thumb_; the Control key was positioned beside the space bar on both sides.
To use the left pinky on those keyboards for left Control, you would have to leave the home row completely, and shit your wrists awkwardly....
gray_-_wolf 108 days ago [-]
Not a huge fan of C-x o. Always remap it to M-o. Dunno, maybe my workflow is just bad, but I switch windows a lot.
thom 108 days ago [-]
I generally use windmove, and have Ctrl-Shift-F/B/P/N move to the window in the respective direction.
amszmidt 108 days ago [-]
To call these Lisp Machine features is to skip quite a bit of history :-)
RMAIL, info, etc predate Lisp Machines (ZMacs and EINE have their roots in ITS/TECO Emacs) by quite a bit. They where standard on ITS long before the Lisp Machine came about, and that is really from where GNU Emacs draws much if not most of its inspiration.
anthk 108 days ago [-]
I tried ITS under simh and RMAIL had the virtual same interface as today. Ditto with Emacs and Dired.
kqr 108 days ago [-]
I think of Emacs as being to Elisp what the JVM is to Java. It's a platform with a whole host of applications, some of which are good and many of which are less good. Examples of applications of great quality include calc, dired, evil, magit, comint, org – you just won't get these outside of the Emacs platform, much like a few years ago you couldn't run Minecraft outside of the JVM platform.
cmrdporcupine 108 days ago [-]
well it's like... emacs takes the "editor buffer" concept to its logical conclusion .... it's not just files, it's anything. calling it an editor is entirely descriptive. it's just that other "editors" are far more limited in that they only edit file buffers.
thom 108 days ago [-]
This is what alienates me when I try to use VSCode every year or two. It has a wonderful extension ecosystem and seems generally quite competent, but there’s no culture of just putting stuff in a text buffer like every other thing. Extensions want their own special windows with different key bindings, the terminal is its own thing, there’s custom UI everywhere. Emacs is just how I think for the most part - here is some text I can freely navigate around and mess with. Sometimes new text is inserted or appended by me or a command, but I’m never having to switch modes in my head.
umanwizard 108 days ago [-]
IMO emacs is best thought of a general-purpose programming environment specialized for creating custom IDEs.
chrchr 108 days ago [-]
Emacs in the 2020s is getting better and better as an application platform. Everything is faster thanks to native code compilation. There are multiple frameworks for interaction, including transient, forms-mode, widget.el, probably some others. There's native support for SVG, formatting and styling text, displaying bitmap images, etc. It's cross platform. You could do a lot worse.
rahen 108 days ago [-]
I like Org mode especially. In a world of digital surveillance, AI fueled spyware, SaaS and app stores, emacs based applications are a haven of trust and freedom.
cmrdporcupine 108 days ago [-]
totally. but biggest problem is it's still single-threaded and an errant program can still lock the whole thing up
and i understand this is extremely difficult to fix
aulin 108 days ago [-]
how often does that happen? doing what?
sintax 108 days ago [-]
Unfortunately, more often that I want. My emacs locks up for multiple seconds a few times a week. Yet, been using emacs for 20+ years, so changing to something else is difficult.
It's especially noticeable with LSP stuff.
cmrdporcupine 108 days ago [-]
things like opening a remote network connection etc
anthk 108 days ago [-]
That should have rewritten with async long ago. Not the whole Emacs, but creating tramp a subprocess binary or an async elisp function.
108 days ago [-]
aulin 108 days ago [-]
add tree-sitter and LSP to that list!
rurban 108 days ago [-]
You forgot the killer app: magit
masfoobar 108 days ago [-]
I enjoy reading stories like this, considering Emacs is still going today --- and I am a regular!
I use emacs for many programming languages. However, when it came to .NET development (at work) - I had to stick with Visual Studio. I always toyed the idea of Visual Studio Code but, due to some of the projects, it was not easy to do when we were using .NET Framework. Once we were getting closer to .NET Core, however, I knew emacs was becomming a possibility.
My work colleagues see "emacs" on one of my screens at work. They are puzzled why I use it to generate code or do git, etc, with it - but rarely ask questions.
One thing I was surprised about, when we finally moved away from .NET framework to .NET Core (.NET 6 and later) -- I was surprised when one member of the team said he was planning to switch from using Visual Studio.. the IDE, to Visual Studio Code.
I asked why and he said is just likes it behaving more as a text editor than a full development environment. Of course, I understood what he meant by that.
Its weird, especially in microsoft stack land, to hear a .NET developer say this. Truth is -- many seem to be moving to Visual Studio Code. It had to take another Microsoft product to do that, considering we always had vi/vim, emacs, or others like sublime text, etc. Before Visual Studio Code, if I dare mention using a text editor for a .NET project, I would have been given all sorts of puzzled faces. How times change.
Today... while most are still using Visual Studio (IDE).. we now have 2 developers using Visual Studio Code. As for me... I am using:- eglot, company, yasnipet, flycheck, etc... EMACS+Omnisharp!
I even wrote functions to easily create new solutions, projects, unit tests, etc.
Programming is enjoyable with emacs. It makes me happy.
kmarc 108 days ago [-]
I converted 140+ CLion users to VS Code / vim / Emacs (mostly vscode) at our company.
It's not about the "text editor". It's about the LSP and implementations for it. Like it or not, before LSP, code intelligence tooling was quite bad in the "text editor" land (except for some tools like clangd or jedi). Today it's a bliss to use a performante, small footprint editor and offload code intelligence. Although, IDE-lover users swear that their IDE's built-in code intelligence is superior (which, in some cases, is objectively true).
Thanks to Microsoft, I guess. Thanks to the FOSS world for the implementations, too.
thom 108 days ago [-]
Was this before or after Nova? I’ve found CLion quite pleasant coming from Emacs - it’d been years since I wrote C++ and I’d never used CMake so I was finding myself spending too long feeding Emacs to get an environment I was happy with. It’s nowhere near as powerful as a modern Java or .NET IDE (I have indulged this new guilty pleasure and played with the whole JetBrains suite at this point) but I’ve found it plenty powerful. I still default to Emacs for ecosystems I know well though, and expect I’ll migrate back fully at some point.
kmarc 108 days ago [-]
We were among the first to try Nova (talking directly with the Developers) and while it's slightly better than CLion classic, the double size package and still no remote index support didn't warrant rolling it out, unfortunately.
We created a clangd-based setup with remote indexes so that our developers can open their editor (vim / vscode) and within 10 seconds they get access to full code intelligence on the 20M+ SLOC monorepo. This is unimaginable with CLion, where developers have to scope down their "view" on the monorepo to a handful of directories, and still wait half an hour for the indexing to happen
bbkane 106 days ago [-]
I'd love to know what product/monorepo has 20M+ SLOC if you'd be comfortable sharing that
kmarc 106 days ago [-]
Internal. 30+y of development with multiple languages, and I'm still a rookie when I look at the code and the progress of it, and part of the revenue (maybe even most of it) doesn't even come from this monorepo codebase.
My understanding is that 20M+ SLOC is not even considered a super large code base, though, when it comes to those "textbook" monorepo examples (urban legends?)
thom 108 days ago [-]
Gotcha, nicely done.
DeathArrow 108 days ago [-]
I use VS Code for Javascript when I am working on Frontend, but even if all of our backend stack is at least .NET 6, I still prefer using Visual Studio for .NET code. Maybe I am too attuned to keyboard shortcuts in VS, but I also like hitting buttons to launch containers, debug, jump to definitions, run tests and so on. I quite enjoy working in Visual Studio. Also, before using VS for .NET I was using VS for C and C++. Even when I coded in Linux I searched for IDEs instead of text editors.
For git I prefer the command line.
I don't think there's right or wrong, use whatever tool makes you comfortable and productive.
masfoobar 99 days ago [-]
I totally understand that. There will always be a debate like IDE vs Text editors... just as much as IDE vs IDE or Text editor vs text editor.
At the end of the day - use what you want to get it done! I have no issues with that.
bitwize 108 days ago [-]
This is pretty much the definition of "cursed".
I'm reminded of the much more positive story from Steve Yegge about a customer service system at Amazon that used Emacs as its UI. Apparently the customer-service reps loved it, and missed using Emacs when the transition was made to an all-new Java app.
I worked for a subsidiary of Capgemini, German ATC system as well, a couple years later, and I'd have welcomed a message router in undocumented elisp. It would've been a very clear step up.
bfors 108 days ago [-]
I had a moment where I considered switching to emacs when reading that section. Would love to see the workflow of one of the devs from that time.
throwanem 108 days ago [-]
You might still consider giving it a try. There is a learning curve, but it's a sigmoid with a remarkable slope past the first knee; I don't necessarily buy all of Yegge's boosterism, but I will say that in those places where I've had the reputation of getting stuff done that no one else could and faster than anyone expected, it's been my skill with Emacs that gave rise to the large majority of that reputation.
(I don't necessarily no-sell all that boosterism, either. The most basal ancestor of today's GNU Emacs dates to the mid-1970s; if the 'Lindy effect' holds true, it really is the 100-year editor.)
bbarnett 108 days ago [-]
I'm not shocked. Same story with Wordperfect and all its F-keys, and keyboard shortcuts, over Word and its mouse driven UI. Secretaries at the time hated the change.
Text input is so much faster, and of you're typing a lot, keyboard <-> mouse movements slow you down.
throwanem 108 days ago [-]
I'm still learning how powerful all of Emacs' navigation bindings can be, and I've been using it exclusively since 2010. Never leaving the home row, and not needing a weird keyboard or a million fragile overrides, is a superpower - and one that also applies anywhere GNU readline is available.
goy 108 days ago [-]
I decided to switch to Emacs reading this too. I was a fervent of the Vim church, but now I see the light.
harry8 108 days ago [-]
You think that's seedy?
I once used excel & vba as an intranet webserver to collect weekly business analytics using user input into web forms from various departments.
A very little knowledge, no proper resourcing, no support, internal politics determined the effort should fail came together to produce such a "success"
Got a seedy story like that? Seedier than that? Let's hear it!
bitwize 108 days ago [-]
Bahahahaha.
I wrote a Perl script for a client to provide CSV records as results to search queries sent by the main application, a custom tool in Microsoft Access my friend had created.
We managed to convince the client to install the Perl script on IIS on some shitty little Windows NT box they had. There was no cloud, and no web services hype yet. Linux was still an experiment for college kids to work with... Windows NT was the future of enterprise servers that did real work.
Anyhoo, our crappy little "web service" did the job. The client's sales personnel were able to upload, search for, and retrieve the process analyses they used to sell new equipment to their customers.
RyJones 108 days ago [-]
I knew no Visual Basic. Microsoft was converting from XNS to TCP/IP and MSMAIL to Exchange. I wrote the automation to port mspager from MSMAIL to Exchange - if you were in a thread on MSMAIL, you cc:mspager, and everyone on the thread with a pager would get a page. I must have spent as many as six hours hacking something together to make it run.
Ah, the 90s. I also wrote a tool to catch people setting up remote dialins so a) they had internet from home b) could share those links with friends to grab stuff from the products server. It ran on Linux and used a network sniffer to catch people.
ITG was crazy!
lambdaone 108 days ago [-]
I see the page has been vandalized; here is a link to the original:
I don't even understand what was built in emacs. A "message router"? Its job was to take messages in from a set of links and transfer them out some other set of links? How did it know what links led where, or how to make progress towards the final hop? How was the path computed? If TCP/IP was already available as a layer, why not just use its routing capabilities? What was DCE and how did it help?
p_l 108 days ago [-]
TCP/IP only understands routing along IP addresses.
"Message router" usually involves understanding higher level entities - In this case, it would understand that a given type of message with given information needs to be forwarded to X, Y, and Z.
DCE was "Distributed Computing Environment", and provided among other things RPC system that is still used by MS Windows NT and DCOM. In this case it was easier to make all parts of the system first talk TCP/IP, then use DCE to provide glue code between divergent environments.
108 days ago [-]
noufalibrahim 108 days ago [-]
It's been posted on HN before but it's probably relevant to this thread. Steve Yegge had a post about how Emacs was used heavily inside Amazon's customer support system https://sites.google.com/site/steveyegge2/tour-de-babel
masfoobar 108 days ago [-]
I appreciate Steve Yegge content.
I didn't know about emacs and the customer support thing -- will look it up and read it.
I believe it was reading his site (a number of years ago, might I add) that convinced me to swap my LCTRL with CAPS on my keyboard. Best decision.. ever!
Now my pinky has been much more comfortable ever since!
Of course, my co-workers hate it that I have swapped keys. They forget about and wonder why capital letters are not working, or trying to copy/cut/paste. lol.
On windows, I use to update the registry directly. Today, I use PowerToys... so I can just close it if someone else uses my keyboard.
Anyway -- diverting the topic a little.
+1 to Mr Steve Yegge!
nxobject 108 days ago [-]
Emacs as a RAD environment/terminal Visual Basic? Check that off my Emacs bingo board…
Looks like someone deleted the wiki article and replaced it with an insult to hn and a racist slur. This is currently what I see when I navigate to the linked article:
> hn sux, pjals is probably in love with autione. niggers all.
If there are any emacs wiki admins reading this, you might want to look into correcting this.
-- EDIT --
I reached out to #emacs on librechat and it has been reverted.
dustfinger 108 days ago [-]
It is still being vandalized. Trying to find someone that can lock the page for now.
noufalibrahim 108 days ago [-]
A bit a digression but the community around #emacs on freenode and emacswiki.org was really wonderful when I was active on it in the early 2000s. Lots of people who were as helpful as they were knowledgeable. ALmost none of the internet trolling and bile that plagues many modern fora and real friendships formed from meeting people online. It's a great throwback to see a page from that site on HN.
justanothersys 108 days ago [-]
i run emacs inside the terminal in vscode so i can have a terminal multiplexer with vim shortcuts clipboard sharing and other weird integrations :)
dailykoder 108 days ago [-]
>Early ‘90s, after “Die Wende”
It was a peaceful revolution. Wende is a term coined by the SED and misleading.
Wende is the term that most Germans use without thinking twice.
It’s been a common word, which existed long before 1989, and while it is since then strongly linked to the events around the time when the Berlin wall fell, you’ll have a hard time finding a German who knows of how this word was used by the East-German political party (SED).
Spoiler: It was used to mean the opposite of what actually happened (i.e. more power to the party).
The parent comment’s link brings you to the transcript of an interview with a former German law professor who, knowing the SED’s usage of the word, made sure to always describe what happened in 1989 as a revolution.
This is actually one person begging other German speakers to start using what he thinks is the correct word.
Ain’t gonna happen.
If East-Germans stood up for themselves in the required numbers to overthrow their leaders, I guess Germans would use the word revolution.
But that’s not what transpired.
In 1989 a system collapsed. Communism. While that may also always qualify as a revolution in academic circles, German people chose Wende, which simply means turnaround.
guenthert 108 days ago [-]
> Wende is the term that most Germans use without thinking twice.
That's interesting. In Hungary the end of communism is called "rendszerváltás" (lit. change of system) or "rendszerváltozás" (lit. change in system). There is a small debate about which term is more appropriate, although they are mostly used interchangeably but nobody calls it a revolution. The process was completely peaceful and legal, unlike other places where the change was more chaotic and violent.
nier 108 days ago [-]
Yes, please don’t assume that most people who speak German call it a revolution either.
Wende means turnaround and that’s good enough for the rest of us.
But today I learned that Hungarian is a Uralic not a Slavic language and so of course I had no chance discerning which word in «rendszerváltás» stood for system or change, which made me mad enough to want to look it up:
rendszer (“system”) + váltás (“change”)
schoen 108 days ago [-]
I know Hungarian doesn't normally have any Indo-European roots, but it can of course borrow words from neighboring languages, so I would have wondered whether váltás could have be borrowed from a Romance language, from the same root as volte/volta (from Latin volvo), meaning 'turn' (particularly given the possible cultural influence of German Wende, which we were just discussing).
I checked on Wiktionary and this nice theory is not right; váltás has been traced back to Proto-Finno-Ugric roots and has known cognates in other distant Uralic languages. Oh well! At least we live in a miraculous time where one can easily check etymologies in various language families in five seconds. :-)
But amusingly, "revolution" itself also literally etymologically means ... turn!
fpetm 108 days ago [-]
The names given to these important events are always controversial and are often politically motivated. For example in Hungary the 1956 revolution was called a counterrevolution under socialism, or for a more recent example the election of Orban in 2010 (who has been prime minister since) is often called another "rendszerváltás" in opposition circles.
Also, Hungarian being an agglutanative language the word "rendszerváltás" breaks down into simpler roots: "rendszer" = "rend" (order) + "-szer" (unique suffix) and "vált" (to change) + "ás" (suffix which turns verbs into nouns). I find this language really cool because of the fact that most words decompose into very simple morphemes.
nier 108 days ago [-]
Interesting. This -szer suffix seems to be used a lot. Attached to hajtó, it turns driver to fuel. Attached to autó, it turns car to car service. Attached to pàra, it tuns vapor to vaporizer. Attached to fékező, it turns braking into brake fluid.
Seems like adding -szer turns the meaning of the word into its enabler.
MonkeyClub 107 days ago [-]
> Wende means turnaround
"Revolution" also means "turnaround".
immibis 107 days ago [-]
Page was vandalized. Not in recent changes, so done with Alex's direct db access.
DeathArrow 108 days ago [-]
Speaking about VMS I wonder why did it disappear. It was so bad compared to Unix?
p_l 108 days ago [-]
Unix was effectively free for a long time, ported to pretty much everything, and with source-based portability a lot of software could be adapted between places.
VMS could be way more solid than whatever was cobbled in Unix (outside expensive niche implementations) but over time Unix would grow and grow while VMS was limited in users and platforms. [1]
Digital selling off some of the software packages they used to provide with VMS only made for quicker demise.
[1] This is also oft-forgotten reason why Oracle got so widespread in enterprises - you could get Oracle with most features on most platforms, even if some were more blessed than others. It might run slower than packages optimized for given platform (think DB2 on S/390, Rdb on VMS) but it would be mostly the same database whether you connected to development server on PC, some department's VAX Cluster, or your recent acquisition's IBM Mainframe.
cbsmith 108 days ago [-]
Wow... and now the page is getting vandalized repeatedly. Hard not to believe this isn't related to it making HN.
Yup. I am on #emacs channel at liberachat. People are trying to find an admin to revert and lock the page. No point in reverting without an admin because the vandal just edits it agian.
cbsmith 108 days ago [-]
Antisemites (really, any hate group) are indefatigable. :-(
I remember how in ~1997 at a science camp we used Turbo Pascal under DOS for most programming labs, and whenever pascal code was run on Linux machines we used p2c translator and compiled the resulting C code.
Edit: spelling
Zmacs -> Emacs, Zmail -> Rmail (or Gnus), Symbolics Document Examiner -> Info, Lisp Machine Lisp -> Emacs Lisp (both children of Maclisp). There may be other examples that I'm not aware of.
GNU Emacs might have started as an editor, but it's certainly grown beyond that. Maybe its become a sort of Valinor, a realm for uprooted Lisp machine users to continue the craft.
Hence the old joke: "Emacs sure is a great operating system, pity it's missing a good text editor"
It has also inspired "Zawinski's Law: Every program attempts to expand until it can read mail" (Zawinski worked on both XEmacs and Netscape...)
But a common pattern was that the systems majorly used with Emacs as the keybindings evolved all had mirrored bucky bits which means instead of using left pinky finger for Control key when hitting C-x C-f many would use right thumb for Control and left hand for X and F.
And so there's nothing virtuously ergonomic about the vim keybindings and people who try to make it seem like there's some UX genius there (and to be fair, also with emacs) are often involved in a rather elitist game of retcon.
Emacs at least evolved on systems that had much richer keyboards, and with the deliberate intent to make use of those extra keys but also make it possible for people to just muck with it and make it whatever they wanted.
In the late 80s, early 90s when I got my start on Unix... I specifically chose emacs over vi because it let me use exotic novelties like... arrow keys.
To use the left pinky on those keyboards for left Control, you would have to leave the home row completely, and shit your wrists awkwardly....
RMAIL, info, etc predate Lisp Machines (ZMacs and EINE have their roots in ITS/TECO Emacs) by quite a bit. They where standard on ITS long before the Lisp Machine came about, and that is really from where GNU Emacs draws much if not most of its inspiration.
and i understand this is extremely difficult to fix
I use emacs for many programming languages. However, when it came to .NET development (at work) - I had to stick with Visual Studio. I always toyed the idea of Visual Studio Code but, due to some of the projects, it was not easy to do when we were using .NET Framework. Once we were getting closer to .NET Core, however, I knew emacs was becomming a possibility.
My work colleagues see "emacs" on one of my screens at work. They are puzzled why I use it to generate code or do git, etc, with it - but rarely ask questions.
One thing I was surprised about, when we finally moved away from .NET framework to .NET Core (.NET 6 and later) -- I was surprised when one member of the team said he was planning to switch from using Visual Studio.. the IDE, to Visual Studio Code.
I asked why and he said is just likes it behaving more as a text editor than a full development environment. Of course, I understood what he meant by that.
Its weird, especially in microsoft stack land, to hear a .NET developer say this. Truth is -- many seem to be moving to Visual Studio Code. It had to take another Microsoft product to do that, considering we always had vi/vim, emacs, or others like sublime text, etc. Before Visual Studio Code, if I dare mention using a text editor for a .NET project, I would have been given all sorts of puzzled faces. How times change.
Today... while most are still using Visual Studio (IDE).. we now have 2 developers using Visual Studio Code. As for me... I am using:- eglot, company, yasnipet, flycheck, etc... EMACS+Omnisharp!
I even wrote functions to easily create new solutions, projects, unit tests, etc.
Programming is enjoyable with emacs. It makes me happy.
It's not about the "text editor". It's about the LSP and implementations for it. Like it or not, before LSP, code intelligence tooling was quite bad in the "text editor" land (except for some tools like clangd or jedi). Today it's a bliss to use a performante, small footprint editor and offload code intelligence. Although, IDE-lover users swear that their IDE's built-in code intelligence is superior (which, in some cases, is objectively true).
Thanks to Microsoft, I guess. Thanks to the FOSS world for the implementations, too.
We created a clangd-based setup with remote indexes so that our developers can open their editor (vim / vscode) and within 10 seconds they get access to full code intelligence on the 20M+ SLOC monorepo. This is unimaginable with CLion, where developers have to scope down their "view" on the monorepo to a handful of directories, and still wait half an hour for the indexing to happen
My understanding is that 20M+ SLOC is not even considered a super large code base, though, when it comes to those "textbook" monorepo examples (urban legends?)
For git I prefer the command line.
I don't think there's right or wrong, use whatever tool makes you comfortable and productive.
At the end of the day - use what you want to get it done! I have no issues with that.
I'm reminded of the much more positive story from Steve Yegge about a customer service system at Amazon that used Emacs as its UI. Apparently the customer-service reps loved it, and missed using Emacs when the transition was made to an all-new Java app.
https://sites.google.com/site/steveyegge2/tour-de-babel
(C-f "When Amazon got its start")
I worked for a subsidiary of Capgemini, German ATC system as well, a couple years later, and I'd have welcomed a message router in undocumented elisp. It would've been a very clear step up.
(I don't necessarily no-sell all that boosterism, either. The most basal ancestor of today's GNU Emacs dates to the mid-1970s; if the 'Lindy effect' holds true, it really is the 100-year editor.)
Text input is so much faster, and of you're typing a lot, keyboard <-> mouse movements slow you down.
I once used excel & vba as an intranet webserver to collect weekly business analytics using user input into web forms from various departments.
A very little knowledge, no proper resourcing, no support, internal politics determined the effort should fail came together to produce such a "success"
Got a seedy story like that? Seedier than that? Let's hear it!
I wrote a Perl script for a client to provide CSV records as results to search queries sent by the main application, a custom tool in Microsoft Access my friend had created.
We managed to convince the client to install the Perl script on IIS on some shitty little Windows NT box they had. There was no cloud, and no web services hype yet. Linux was still an experiment for college kids to work with... Windows NT was the future of enterprise servers that did real work.
Anyhoo, our crappy little "web service" did the job. The client's sales personnel were able to upload, search for, and retrieve the process analyses they used to sell new equipment to their customers.
Ah, the 90s. I also wrote a tool to catch people setting up remote dialins so a) they had internet from home b) could share those links with friends to grab stuff from the products server. It ran on Linux and used a network sniffer to catch people.
ITG was crazy!
https://www.emacswiki.org/emacs?action=browse;id=EmacsStorie...
"Message router" usually involves understanding higher level entities - In this case, it would understand that a given type of message with given information needs to be forwarded to X, Y, and Z.
DCE was "Distributed Computing Environment", and provided among other things RPC system that is still used by MS Windows NT and DCOM. In this case it was easier to make all parts of the system first talk TCP/IP, then use DCE to provide glue code between divergent environments.
I didn't know about emacs and the customer support thing -- will look it up and read it.
I believe it was reading his site (a number of years ago, might I add) that convinced me to swap my LCTRL with CAPS on my keyboard. Best decision.. ever!
Now my pinky has been much more comfortable ever since!
Of course, my co-workers hate it that I have swapped keys. They forget about and wonder why capital letters are not working, or trying to copy/cut/paste. lol.
On windows, I use to update the registry directly. Today, I use PowerToys... so I can just close it if someone else uses my keyboard.
Anyway -- diverting the topic a little.
+1 to Mr Steve Yegge!
> hn sux, pjals is probably in love with autione. niggers all.
If there are any emacs wiki admins reading this, you might want to look into correcting this.
-- EDIT -- I reached out to #emacs on librechat and it has been reverted.
It was a peaceful revolution. Wende is a term coined by the SED and misleading.
https://www.deutschlandfunk.de/sprachkritik-wer-wende-sagt-s... (in german tho)
It’s been a common word, which existed long before 1989, and while it is since then strongly linked to the events around the time when the Berlin wall fell, you’ll have a hard time finding a German who knows of how this word was used by the East-German political party (SED).
Spoiler: It was used to mean the opposite of what actually happened (i.e. more power to the party).
The parent comment’s link brings you to the transcript of an interview with a former German law professor who, knowing the SED’s usage of the word, made sure to always describe what happened in 1989 as a revolution.
This is actually one person begging other German speakers to start using what he thinks is the correct word.
Ain’t gonna happen.
If East-Germans stood up for themselves in the required numbers to overthrow their leaders, I guess Germans would use the word revolution.
But that’s not what transpired.
In 1989 a system collapsed. Communism. While that may also always qualify as a revolution in academic circles, German people chose Wende, which simply means turnaround.
Sure, but for something not directly related: https://de.wikipedia.org/wiki/Wende_(Bundesrepublik_Deutschl...
(might be dating myself there ;-}
Wende means turnaround and that’s good enough for the rest of us.
But today I learned that Hungarian is a Uralic not a Slavic language and so of course I had no chance discerning which word in «rendszerváltás» stood for system or change, which made me mad enough to want to look it up:
rendszer (“system”) + váltás (“change”)
I checked on Wiktionary and this nice theory is not right; váltás has been traced back to Proto-Finno-Ugric roots and has known cognates in other distant Uralic languages. Oh well! At least we live in a miraculous time where one can easily check etymologies in various language families in five seconds. :-)
But amusingly, "revolution" itself also literally etymologically means ... turn!
Seems like adding -szer turns the meaning of the word into its enabler.
"Revolution" also means "turnaround".
VMS could be way more solid than whatever was cobbled in Unix (outside expensive niche implementations) but over time Unix would grow and grow while VMS was limited in users and platforms. [1]
Digital selling off some of the software packages they used to provide with VMS only made for quicker demise.
[1] This is also oft-forgotten reason why Oracle got so widespread in enterprises - you could get Oracle with most features on most platforms, even if some were more blessed than others. It might run slower than packages optimized for given platform (think DB2 on S/390, Rdb on VMS) but it would be mostly the same database whether you connected to development server on PC, some department's VAX Cluster, or your recent acquisition's IBM Mainframe.