HNHacker News
TopNewBestAskShowJobs

oinksoft

3,796 karma · joined April 21, 2011

https://oinksoft.com/
submissionscomments
oinksoft··on Vim Plug – A minimalist Vim plugin manager
It's because of comments like this that I've reserved my opinion about Vim script managers, of all things, for many years. There's no "right" or "wrong," I favor a tightly integrated editor setup where I own my plugins. Further, I don't believe that reaching for a plugin every time you have a problem to solve is the best or only way to extend your editor. My .vim probably has 10-30 third-party script collections, but "upgrade all vim scripts" isn't something I've ever wished to do at the same time. I prefer to upgrade plugins that I know to be active projects after reviewing the changelog, and I do this about once a year.

Is it so hard to relate to the desire simplicity and control in editor config? It's one place where I want to keep the cognitive overhead as low as possible: No forking git repositories to fix a bug in somebody's indent script that's not been maintained since 2007.

oinksoft··on Vim Plug – A minimalist Vim plugin manager
Which script manager did you settle on?
oinksoft··on Vim Plug – A minimalist Vim plugin manager

  > This is emacs mentality.
I think that plugin managers (further complexity in editor configuration) are Emacs mentality. See, ELPA. The approach I'm describing is how people maintained their vimfiles before plugin managers became popular.

New Vim users are told to use a plugin manager now if they want to install other users' scripts, and I believe that is a flawed approach to configuring a lightweight editor like Vim.

oinksoft··on Vim Plug – A minimalist Vim plugin manager
Vim scripts are barely even packages! Package managers for operating systems and build dependencies? Certainly. Does everything need package management? Only a small subset of all vim scripts have any dependencies. Tim Pope was the first person I remember introducing a script dependency (tlib) and I thought it was a ridiculous decoration at the time. A good vim plugin should be self-contained, in my opinion.

I recognize that this is really a misgiving I have with the direction Vim is going, towards complexity (plugin managers, multithreaded implementations). NeoVim looks like the final push that makes Vim configuration and operation truly byzantine. Then everybody gets to pick between Emacs and VEmacs.

oinksoft··on Vim Plug – A minimalist Vim plugin manager
What is the use case for a Vim script manager? I've never understood what this offers over including a full .vim in your version-controlled dotfiles. With a script manager, you have to worry about repositories disappearing, Github being down, and also breaking changes (unless you want to track a SHA on each one).

With a simple .vim, your Vim configuration is a living, breathing thing, and you can easily modify any script you're using the moment you find a bug in it that interrupts your work: You own your vimfiles. When you manually upgrade a script, it's trivial to roll back to the last version that worked. I guess dotfiles are the last place I want to introduce needless indirection: They should represent my work environment at a point in time, precisely.

I can only see two benefits: The ability to try out new plugins quickly, and the ability to upgrade all of your plugins at once quickly. Are these worth sacrificing control over your editor config? This has puzzled me since the day tpope released Pathogen to much fanfare.

oinksoft··on New Requests for Startups
In cities I can imagine an apparatus not unlike a retractable roof in function, spanning the gaps between buildings. It would capture rainfall and prevent flooding while keeping citygoers dry. The "rooves" themselves would channel water as would an aqueduct, possibly reorienting themselves to better handle local downpours. The underside would need to emit light, whether transmitted natural light or otherwise.

Such a system would bring ancillary benefits of improving travel safety in the city, and reducing the need for road maintenance and vermin control (esp. mosquitoes).

I imagine the biggest technical challenge to be durabiity: The need to be resilient against hail, high winds and flying debris. And should it fail at the worst time ... an awful thought! But levees are a similar technology in that regard.

oinksoft··on Where does Ruby go from here?
Some Linux distributions are not including Perl now.
oinksoft··on Notes on the Celebrity Data Theft
The more tightly you control copies of your password DB file, the less vulnerable you are if somebody "purposefully injected a vulnerability" in the software as parent suggests, that's the only reason I brought it up.
oinksoft··on Notes on the Celebrity Data Theft
Why do you assume every KeePass user is storing their passwords on a server somewhere? I would never send my password file over a network, and I don't consider USB storage "sharing."
oinksoft··on Kotlin, the Swift of Android
That's putting the cart before the horse. Google's already shown with the Dart project that they're willing to invest in building tools for their own technology. Android Studio hasn't been the official Android IDE for very long either.
oinksoft··on Do Students Really Have Different Learning Styles?
In elementary school, it was always the slow learners who the teachers classified or who self-selected as "kinesthetic learners" when this topic came up: Hands-on teaching was far more patient than lecturing. Lazy students like me were called "visual learners" because we didn't care to bury ourselves in state texts written for 10 year-olds. I sensed that the theory was bunk then, and it's bunk now. From the cited UVA article: http://www.changemag.org/Archives/Back%20Issues/September-Oc...

  > Third, learning-styles theory has succeeded in becoming
  > “common knowledge.” Its widespread acceptance serves as
  > an unfortunately compelling reason to believe it. This
  > is accompanied by a well-known cognitive phenomenon
  > called the confirmation bias.
That point is made clear by other comments in this thread treating the existence of these "styles" as a matter of fact.

Differences between students don't prove that learning is constrained to a single sense. It's a bizarre hypothesis and it only serves educators.

oinksoft··on Keurig competitors crack company's DRM code
Hah, just wait until you experience the INTERNET OF THINGS.
oinksoft··on Elvish – An experimental Unix shell in Go
Bash Completion[1] scripts are what provide this feature; perhaps fewer Linux distributions are including them. I recommend keeping them in your dotfiles[2] and loading them in your .bashrc[3]. This is nice because Bash Completion operates by filename, meaning you can take any project's bash completion script and install it at `$bash_completion/completions/script-name`.

[1] http://bash-completion.alioth.debian.org/

[2] https://github.com/oinksoft/dotfiles/tree/master/lib/bash-co...

[3] https://github.com/oinksoft/dotfiles/blob/master/bashrc#L22-...

oinksoft··on Why We Use OCaml
Parent was worried about availability of OCaml developers, and would "pick RoR any day just to eliminate the risk of getting to market late." Never mind that RoR is a web framework, this kind of thinking, that some technology is a silver bullet, or that another is unusable because it is less popular, or that six so-so developers are worth as much as two or three good ones because they're easier to find, is a real problem. It's immature to say out-of-hand that some language, for any application, is "too risky" when it has a good industry track record.
oinksoft··on Why We Use OCaml
You speak of "the business case" as if there is only one kind of software business in the world, one that focuses on getting to market quickly with inexpensive developers. Reasons like "OCaml is hard" are short-sighted unless you are only planning for the short term. You wouldn't have to hire for OCaml, just for functional programmers.
oinksoft··on Show HN: Vim Awesome – Vim plugins
http://www.vim.org/scripts/script_search_results.php?keyword...
oinksoft··on Go vs. Erlang for distribution
Loïc Hogun (author of Cowboy, other projects) hits the nail on the head:

  For me Erlang is first fault tolerant, then concurrent,
  then functional, yet for many people it seems to be the
  opposite order. I personally care very little about
  Erlang being functional (though I do care a great deal
  about immutability and pattern matching being the default
  behavior, the rest not so much), and the concurrency is
  nice but only because it enables all the fault tolerance
  features of the language.
I've yet to encounter anything as good as OTP for building fault-tolerant systems. Go is not designed for safety like Erlang/OTP, and as far as I know there is no concept of supervision with Go routines/channels, etc.

Go is no "ultimate antagonist to Erlang" as OP hypothesized.

oinksoft··on Java Pain

  Especially used of tricks that are so poorly documented
  that they must be learned from a wizard.
oinksoft··on Java Pain
Without the code and error message, this is just a rant from some (famous) guy who can't/won't figure out his tools.

  First of al­l, it took me for­ev­er to fig­ure out the ja­va
  command-line in­can­ta­tions to tell it that it need­ed my
  project’s class files and the json.org li­brary (which I’d
  al­ready down­load­ed so I could com­pile the suck­er). Yeah,
  I used to know that stuff ten years ago, but there re­al­ly
  shouldn’t be any com­plex­i­ty here.
"in­can­ta­tions"? It's not wizardry.
oinksoft··on CGrep: a context-aware grep for source codes
It is a package install away: http://www.haskell.org/platform/mac.html

On my machine it is significantly slower than `ag` (Silver Searcher) for basic searches, but it should install and run.

oinksoft··on Be Nice Or Leave
I'm not going to lie, this sounds like hell. Places like that make outcasts of anybody who makes the rest "look bad" by "working too hard." It's nice to be valued for your technical skills when you consider the alternative.
oinksoft··on Auto-expiring TODO notes in Ruby
In smaller codebases you can use a git hook to display your TODOS: http://oinksoft.com/blog/view/5/
oinksoft··on Rappers, Sorted by Size of Vocabulary

  > Definitely comes out in their music...
That's right, Too $hort's music is laser-focused!
oinksoft··on The Diving Save
That makes a lot of sense then, and I'll bet the software industry has changed more since 1999 than I could know. I worked in the DC area from 2006 until last year, and running into another programmer under 30 on the job during that time was the exception rather than the rule. Almost all of the programmers I worked with were 35+ at a bunch of different jobs, ones where I was hired to use "new" technologies like Ruby, Python and PHP. The largest shop I worked at, most of the developers were at least 50!
oinksoft··on The Diving Save
I don't know what you've been observing, but the DC area is pretty much legacy programmer heaven. Nobody there thinks that they'll be out of work by their late thirties. Whoever told you that programmer careers end at the same age in the Bay Area misinformed you also. The issue of slow/absent career growth beyond the first decade working is definitely not market-specific (it has more to do with the current state of software engineering and the business of software), but that is a world apart from unemployment.
oinksoft··on Tptacek's Review of "Practical Cryptography With Go"
The last paragraph of this review is in poor taste. The most cursory research into the author's "CryptoBox" shows that indeed this project is inspired by NaCL.
oinksoft··on Extend Python 2.7 life till 2020
> the momentum to python 3.x will pick up considerably.

People won't leave Python 2.7 for Python 3.x, they'll go to other languages. Python has no right to its users.

oinksoft··on AngularJS integration with Haskell
Starter/example projects are nice to have when you are learning because they put something bigger than "Hello, World" in your hands, and I'm certain people will find this useful. To call a project like this "beyond redemption" is not very friendly to newcomers to Haskell. It's difficult to think about library design when you cannot yet perform everyday tasks in the language.
oinksoft··on Class Hierarchies? Don't Do That
Somebody has also made a JavaScript library for this: https://github.com/Gozala/protocol
oinksoft··on Why CoffeeScript Isn't the Answer
That statement has nothing to do with personal experience, and everything to do with unmistakable trends in software development. If JavaScript were a frozen language I would agree with you, but the momentum behind JS is a tsunami.
← PreviousPage 4 of 27Next →