

Don't Deal With It, Fix It - hswolff
http://blog.harrywolff.com/dont-deal-with-it-fix-it/

======
crazcarl
This reminds me of the George Bernard Shaw quote: "The reasonable man adapts
himself to the world; the unreasonable one persists in trying to adapt the
world to himself. Therefore all progress depends on the unreasonable man."

------
ggreer
I had to do some digging, but I found the issue he was talking about and the
plugin to fix it. The problem with Sublime Text 2 is that the cursor is very
thin and hard to see. The plugin to fix it is
[https://github.com/netpro2k/SublimeBlockCursor](https://github.com/netpro2k/SublimeBlockCursor)

If you don't want to install that plugin, you can get a more visible cursor by
adding "caret_style": "wide" and "highlight_line": true to your Sublime
preferences.

I'm not sure why the author avoided mentioning the specific issue. If it
affected him and his friend, it seems like he would want to err on the side of
telling others about it.

~~~
hswolff
author here: I couldn't remember clearly if the issue that was fixed was the
block cursor one or something else. It would prove logical that the only one I
can remember is the actual issue discussed, but I can't be sure.

Aside the focus was on the act and impulse rather than the actual issue.

Aside number two, I had a few glasses of red wine while writing this. I find
it helps get the words flowing, but the memory fuzzy. ;)

~~~
ggreer
I just noticed that the plugin was last modified a year ago, but your story
was written last week. It makes sense that the exact issue would be forgotten
with time. I've had similar instances where I've forgotten the exact issue but
remembered the general lesson.

~~~
malkia
Yet, none of them came out with a new editor.

------
byuu
It's always nice to fix up software, but it adds maintenance costs.

If you get your patch submitted upstream, it can take months or years before
it's in official repositories. And it could be declined.

You can wrap all the changes into a patch file, but you still have to apply
and build that project every time you clean-upgrade/(re)install your OS.
(Maybe it's less common for others, but for me, it's three systems upgraded
roughly every 6-12 months.) And you're breaking out of your binary package
manager. And if your OS updates, it could overwrite your custom binary. And
the second the upstream source changes, your patch breaks.

The more projects you patch, the longer it takes to set up a fresh install. So
I try and limit it to only things I _really_ care about. Which for me as a
programmer, turns out to include my text editor as well.

~~~
drewcrawford
While this is completely true, it is itself a bug, that we should fix. We
shouldn't live in a world where a programmer's normal expectation is her patch
sits in limbo for a long time and then is rejected.

------
ww520
What he said rings true, especially when it comes to day to day tools that
directly impact your productivity. I had a similar experience with Emacs.

When using Emacs, I often visited numerous buffers jumping from place to
place. Emacs's support for global mark-and-jump was pretty poor that I often
lost track of where I came from.

Finally I got fed up and sat down to write an Emacs package to address the
problem. This was my first extension package and I had to learn all the in-
and-out's of Emacs extension development. The result was well worth the
effort. I've used the package heavily in day to day editing since then. It has
saved me untold amount of time.

When something really annoys your day to day work, time spent fixing it is
time well spent.

Edit: I did search for alternative solutions and found none before I dived in.

Edit2: For those interested,
[https://github.com/williamw520/breadcrumb](https://github.com/williamw520/breadcrumb)

------
timr
"Just fix it" is definitely level 0 hacker zen. Level 1 hacker zen is
subsequently realizing that you're spending too much time fixing your tools,
and searching for different tools. Level 2 hacker zen is realizing that older
tools probably already fixed it, if you're willing to learn their complexity.

In any case, I feel like a lot of the latest-and-greatest fetish in tech is
driven by people who don't "just fix it", and are therefore constantly on the
lookout for the next big thing that will solve all your problems and give you
a chocolate-covered puppy. Most of the time that I've decided to use a
"simple, new" tool, I've quickly found out that the reason the tool is simple
is because I Have To Fix It, and that once I've Fixed It, I have a tool that
was as complicated as the "complicated, old" tool, but totally unsupported.

~~~
voltagex_
The other day, I had a problem with Sublime Text not playing nicely with
whatever version of GIO/GVFS I had on the system to open a file over SFTP. I
went back to Vim and the netrw plugin because I didn't like the idea of paying
$20 for a Sublime Text plugin for something it should be doing natively.

Cue 2 hours of cursing at the Vim setup - there were no errors, I just didn't
get any remote directory listings in netrw. I also didn't have any colours for
some reason, and #vim on Freenode couldn't help.

Sometimes, the older tools are just as frustrating.

------
larakerns
Thinking like a designer is so important in coding. Designers spend most of
their time observing a problem then deriving a simple, efficient patch. I'm
always looking for ways to patch, by observing closely and listening to what
others are frustrated with.

------
craigc
I think this is great advice. Two of the biggest annoyances I had with Sublime
Text were the autocomplete suggestions and the bracket/parenthesis matching
(or lack thereof).

I still think the default behavior (as of Sublime Text 3.0) is pretty broken
with both. For autocomplete suggestions I found this to fix the problem:

[https://github.com/atombender/sublime_text_alternative_autoc...](https://github.com/atombender/sublime_text_alternative_autocompletion)

For bracket/parenthesis matching it was annoying me so often that I ended up
fixing it myself by writing a plugin:

[https://github.com/ccampbell/sublime-smart-
match](https://github.com/ccampbell/sublime-smart-match)

I think this advice rings true for more than just editors. Third party
libraries, browsers, frameworks, etc, all have their limitations/weaknesses
and fixing things that annoy you is always better than living with the
problems.

------
skbohra123
From the title, I thought the article would be philosophical and would be
about life problems, but came to me as a surprise when I clicked and found it
is something about sublime text...

------
userbinator
I've been following this philosophy even before I started programming - in
fact "fixing" binaries with a disassembler and a hex editor was how I got into
programming in the first place. I certainly think the generally complacent
attitude of the population today could use some change.

------
damian2000
Was in a similar situation as the OP with ST (a different plugin), but
unfortunately I couldn't justify to myself spending any more time trying to
fix it, so just went back to my old standby, Notepad++. Surely editors+plugins
should just work?

~~~
kemayo
Out of curiosity, what was your issue?

~~~
damian2000
Can't fully remember but it was something to do with the Go Sublime plugin
([https://github.com/DisposaBoy/GoSublime](https://github.com/DisposaBoy/GoSublime)).
I know I should have perservered longer, but gave up in the end.

------
ejain
Before resorting to Fixing It, I might first Report It.

