Skip to main content

In Search of the Text Editor

I've been programming since late 2011. Absolutely fell in love with it. As things started to get more and more interesting, one thing was clear, a programmer needs a text editor built for programming.
I was introduced to Vim in our college and I hated it! I didn't like the modal mechanism of Vim. Ubuntu comes pre-installed with gEdit. It's a simple text editor with not many bells and whistle. It has syntax highlighting which helps and programmer a lot. It could've been **the** text editor for me, if only it had auto completion. Alas! So, the search began! I didn't want to use Vim, and so turned to next big name in text editing.... Emacs! An alias of complexity ._.

GNU Emacs

Emacs was a natural choice for me, as I care a lot about the Free Software movement and also because I like Richard Stallman. What would be better than using a piece of software that Mr. Stallman wrote himself! Emacs is a text editor, that does everything a computer can do.... (^_^)'
Learning Emacs was NOT easy... At all! The learning curve is quite steep. Its key bindings are hard to digest. But the flexibility it provides is amazing. You can really *do* stuff with it. Someone nicely said "Emacs is the way of life". So it seemed to me... for a while. Emacs is a great editor if you're using it in a terminal, but not so much if you're using a GUI... well at least not to me.
There is no auto completion out of the box. And to customized Emacs, you need to learn Emacs Lisp.. which is just a overhead to me. 

Sublime Text

I checked out Sublime Text, but it was not the thing for me. Next I gave Kate a shot. It was nice and simple. Maybe a bit more simple than I would have liked. Auto completion was there, but not the sophisticated kind.

Atom

I finally found Atom! And it has become *the* text editor for me. It's got everything my programmer heart desired... sophisticated auto completion, snippets, syntax highlighting, syntax checking, multiple panes, Git integration and flexibility. It works pretty good out of the box. But you can also customize it to great level. It has a built in package manage to add new features to it. And some packages are really useful. I'd say that the GitHub team behind Atom has really achieved its goal.

"Our goal is a zero-compromise combination of hackability and usability: an editor that will be welcoming to an elementary school student on their first day learning to code, but also a tool they won't outgrow as they develop into seasoned hackers."


Update: I have switched to Visual Studio Code. Read more about it here.

Comments

Popular Posts

Why I Started Blogging

It's been almost 5 years since I started blogging. This is the 30th post being published. That means over the course of 5 years, I've written 6 posts per year. Although 30 is much less than I would have liked, this is one of those pet projects I have continued even after the honeymoon phase. Today I want take some time and discuss why I started this blog in the first place. I was in my 3rd year of engineering studies when I started out. I had already developed a keen interest towards programming and tech in general by then. Having a blog seemed liked a cool idea. There were couple of more reasons to go ahead with this idea. That's what we are here to discuss today. Setting up a blog seemed like a technically challenging task. I wanted to know how to setup a blog with comments, advertisements and with a custom domain. It sounded like a great way to acquire new skills and learn new things along the way. Back then I didn't know anyone who shared my enthusiasm for tech...

Angular's E2E Testing Framework - Why is it called Protractor?

The Angular Ecosystem Angular is an amazing framework. It enables us to build modern web apps easily. Yes we can build a modern web app with just HTML + CSS + JavaScript, maybe with a dash of jQuery 😉 But Angular just makes it whole lot easier. Users today's web apps to be fast, well designed, offline-capable, secure and a delightful. Since Angular is a opinionated framework, it forces you to make the right choices. Today Angular is not just a web framework. it has created its own ecosystem. As you might have guessed, I am a Angular fanboy 😎. But one thing I'm not a fan of is writing test cases 😛 I started learning about software testing in late 2019, because I asked to setup unit + E2E testing for one of our projects. What I learned was, Angular come with Karma + Jasmine setup (for unit testing) out of the box. But it has built a specialized E2E testing framework called Protractor . But I couldn't figure out why they called it Protractor of all things. Later it dawned o...

Tensai Sensei's Wisdom #1 - Simplify Your Life!

Wisdom #1 If you want to live a peaceful and happy life, automate/delegate/eliminate things that don't really add any value to your life. This will help you muster time for things that you want to do in your life. Always remember, time is your only asset that you cannot produce more of. Examples Automate - Your investments using SIPs Delegate - Hire a maid or a cook to do the chores Eliminate - Taking a bath every single day

Tensai Sensei's Wisdom #2 - You Want It? Go Get It!

If you want to obtain everything that you dream of, you have ask for it and work towards it. You can't just sit there and wish that you get it. Life doesn't work that way. Nobody's gonna notice you and offer things to you because you deserve it. No, you must seize it yourself! If you don't ask, the answer is always no The more you ask, the more you get. If you don't ask, you better forget (it). Everything is negotiable There is always a budget There are 2 types of people in this world - obtainers and complainers.

How to Use NPS Tier II Account for Higher Returns & Greater Flexibility

NPS is Misunderstood The National Pension System (NPS) is often misunderstood. Unlike other investment vehicles, NPS is specifically designed for retirement planning . Every feature of this product is geared toward long-term investing , making it fundamentally different from conventional investment options. Financial security is a basic human need. For those earning a salaried income, receiving a monthly paycheck provides a sense of stability. Naturally, we want to maintain the same sense of security even after retirement. One of the best ways to generate a steady post-retirement income is through an annuity . An annuity works by investing a lump sum amount, which then provides a fixed income at predefined intervals — in this case, monthly payments. Importance of Annuities Scientific research has proven that humans are not biologically wired to make complex decisions repeatedly. Our brains tend to rely on shortcuts, which can often lead to poor decision-making . Emotions like f...