183 karma · joined February 19, 2013
We (a corporate shop) have a lot 'legacy' scripts in Perl.
I am assigned to maintain such scripts as no one else wants that role.
I discover, Perl is powerful.
Every 'legacy' script I find can be trivially regression tested (These scripts always have the same pattern, take some input, produce some output).
Managers want to move away from Perl.
I want to move closer to Perl.
Unless everyone wants to edit the same doc at the same time.
When I update windows, I have to buy a new printer or, the headphone jack no longer works...
You are not allowed to change anything and commit it :) But it's amazing how much cruft you can dig out by say, re-writting the build system so that everything links dynamically and then running an address sanitizer build in dev env.
One reason for controlled burns was to create a funnel in a thick new growth area in order to funnel the herding animals for hunting purposes.
These controlled burns had successs in diminishing the risk of wild unstoppable fires.
Now, the land grows thick until fire comes to clean according to natures' idea of natural process.
I tree planted in BC/Alberta, the land grows so thick that they often have to fly you in helicopter to re-plant land that previous tree planters failed to plant correctly.
Has this problem been solved shy from using lynx/emacs/ect?
Features include: * No stack * Mostly type safe * Process complex thoughts known as emotions
Bugs: * ships without a C compiler * Consumes too much coffee * Version upgrades correlated to earth's rotation around the sun.
Example: I had a friend who had an interview for company XYZ, "Write a program that clicks the first link in a wikipedia entry and exits when you reach the philosophy page (implement in the language of your choice). You have 15 mins"...
My friend was a really hard working, intelligent, and honest guy and he could not do it... i doubt cheaters could do it cold.
IMO, bash sticks around because a lot of people still find it useful.
Example: I have 2 mins to check if a duplicate line has occured in a log file with some arbitrary logging format. One pipeline later, I have an answer.
Things I wish I knew about emacs earlier in life:
Emacs benifit plan volume 1:
* You will finally love the ui/ux for `info` pages
* macros (save and repeat a sequence of commands, commands can be applied to anything)
* registers (save locations in buffers, save text for later pasting)
* Frames (M-x speedbar for starters)
* modes (which to use and how to configure?!)
* built in documentation is awesome!
* what does this sequence of buttons do is only a `Ctr-h k <sequence of buttons>` away
* Mostly solid remote editing (tramp mode is no match for rsync on large files, luckily, RMS and friend have afforded us our freedom and we can configure this to our liking.)
* Freedom (as already identified by many people here but not by the word 'Freedom'. Also Freedom causes longevity. I have no source on this)
* Why is Freedom not number one on my silly list? If this were ORG mode I could bump it up to the top quickly.
* Excellent (multi-language (multi-language)) support. This is a recursive joke and the base case for me at least is English Bash. Emacs is language agnostic and language aware
* You will never have to write a 'throw-away' shell script ever again because emacs macros are that good. Still like shell scripting, incorporate shell commands in your macro.
* Carpel tunnel syndrom (cts) is a real thing, but, IMO, poor posture is more likely to give you health problems than cts. In reality, with Ctrl-R reverse search and Ctrl-S forward search, you can basically cycle through every command you have ever typed.
* Default key bindings in bash are emacs based and I actually enjoy the emacs bindings more than the vi ones despite spending lots of time in vim
Last reason: It's fun to play with a "real time display editor" and realize that emacs is an endless journey on the road to freedom in your ability to manipulate computation, however it may be expressed in years to come.
The new section should be called: 'Gotcha'.
Edit: changed to existential claim.