News for hackers. Stuff that matters.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by Waterluvian on Sunday December 15, 2019 @11:33AM (#21797017)
I badly want to use intellij for Rust and other languages. But the issue I smash up against is that years of Vscode + my customizations has made using any other editor terribly clunky.

I can spend hours customizing the controls and UI but I still feel like someone handed me the keys to some old car made in a country that doesn't exist anymore.

This in part revealed to me the cost associated with all the editor customizations I make. Default settings are nice that way.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by grogenaut on Sunday December 15, 2019 @12:25PM (#21797428)
are you really writing that much code where a 20% (actual, and I'm going to guess to you it's a 100% percieved) slow down is going to make you get fired?

Or think of it another way, why are you only able to work in optimal environments, and is that the real benefit you provide? Are you going to get laid off if you aren't fully optimal? If you switched keyboard layouts would you lose this speed too? Can you afford to make ANY changes at all if this is your criteria?

After having to code about 80 java file application on a data center pull out crappy laptop screen with a jacket with just notepad and javac over a few days I just use the defaults on everything or settings that are one change away (like eclipse mode in intellij which is a meta setting like vim mode). Other than that I just adapt and never customize. This lets me use other people's computers easily, use many different OSes (I write software that enables the rest of my company so I write for what they use on what they use), and editors with little issue. I can also setup a computer in about 20 minutes. I find that the majority of my time these days is deciding what we should be doing and how. The time to write the actual code is pretty minimal.

So I ask again are you optimizing for the right thing here? Unless you are constantly re-enacting the scene from Swordfish I don't think you are.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by haolez on Sunday December 15, 2019 @12:51PM (#21797625)
Former Emacs user here. I've been doing the same: stick with the defaults as much as possible and adapt. This brought nice additions to my workflow, like multi-cursor editing, which I didn't use in Emacs because doing regexes was my way of solving these problems.

PS: I'm pretty sure that Emacs must have a multi-cursor mode somewhere :)

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by hprotagonist on Sunday December 15, 2019 @03:53PM (#21798903)
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by iLemming on Tuesday December 17, 2019 @02:04PM (#21817332)
Emacs doesn't just have multi-cursor, it provides multiple ways to do that, there's iEdit, there's also ahs-edit-mode.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by sooheon on Sunday December 15, 2019 @01:38PM (#21797954)
> are you optimizing for the right thing here?

There isn't one loss function for all people.

You've found joy in the narrative of "I just adapt and never customize ... [I can function well in my org] with little issue". Someone with a different set of constraints and preferences won't find that narrative as enjoyable.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by Waterluvian on Sunday December 15, 2019 @03:00PM (#21798572)
Apologies but I'm only reading the first sentence of your comment.

It's about how I enjoy coding. Its my job but I love it. It's fun. Part of what makes it so enjoyable is the ergonomics. Ask any craftsman about their tools.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by grogenaut on Sunday December 15, 2019 @05:22PM (#21799381)
Non-sarcastic question, how do you fare in situations where you are uncomfortable, like learning new skills; Where you are just BAD at a thing. New sport, new technology/language, etc?

I learned a while back that I had to lean into those things and just get through the awkward if you wanted to keep learning.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by Waterluvian on Sunday December 15, 2019 @05:50PM (#21799527)
You raise a great point the more I think about it.

I thrive when learning new skills and being "uncomfortable" and out of my element.

It's probably because I'm picking at rust for fun in my personal time that I don't want to deal with the uncomfortable parts. In my own time I coast and comfortably stroll through new problem spaces rather than get to that "my brain hurts" part that's all too familiar.

If rust + intellij was a work requirement I probably would just pick it up and discover that my brain can handle perfectly, two sets of bindings the way people claim to be able to do qwerty and Dvorak interchangeably.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by grogenaut on Sunday December 15, 2019 @10:55PM (#21800688)
Personally I pick one new thing per personal project and leverage my skills on the rest. If I go too far into the new things then I get bored or flummoxed with say "buck build system" and "learn kotlin" in the same project, and never actually make progress.

I think this is why I bounced off of react 4 times before sticking, too many things to learn at once. Then again I bounced off of antlr 4 times and only really got it to stick because it was a work need, and antlr is the only new tool in that chain.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by pcnix on Sunday December 15, 2019 @02:00PM (#21798126)
There's no need to be that aggressive, OP didn't say anything about getting fired or losing his job. What's optimal is subjective, and they seem to find comfort in what they do. Let's not get too used to tooting our own horn that we do it even on unrelated comment chains.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by sombremesa on Sunday December 15, 2019 @11:39AM (#21797062)
Oh boy. This is how I feel any time I touch a coworker's computer to try and peer program or help them out. I have so many shortcuts (Keyboard Maestro), workflows (Alfred 3), keybinding changes (Karabiner), and utility programs (Amethyst, Spectacle) on top of this IDE thing (I use intelliJ and coworkers use VSCode) that I immediately press a bunch of keys (out of muscle memory) and invariably something completely unexpected happens. It's super frustrating - but I doubt anything can be done about it other than sticking to my machine.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by bonestamp2 on Sunday December 15, 2019 @12:05PM (#21797254)
If you pair program a lot you could export your Intellij settings and switch to that profile when you're on their machine. But it sounds like that only handles some of the changes that you'd need (you could move any of your Intellij related key bindings from Karabiner into Intellij to get a little closer).
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by sombremesa on Sunday December 15, 2019 @12:43PM (#21797554)
Not sure IntelliJ can handle key mapping the same way as Karabiner - for example, my right option key (only the right one, not the left) is mapped to command + space. Good tip nevertheless!
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by bonestamp2 on Sunday December 15, 2019 @06:07PM (#21799617)
Ya, fair enough... I too have some Karabiner mappings that can't be done in IntelliJ. If you're serious about it, another option could be to get a programmable keyboard so many of the keybindings are right in the keyboard and you could just plug your keyboard in to the other person's computer.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by lowercased on Sunday December 15, 2019 @02:33PM (#21798396)
perhaps at some point IntelliJ/JB will offer the 'live share' functionality vscode has had for over a year.

live edit someone else's project on your computer with your editor/keybindings/etc.

or you could switch to vscode for the times when you want/need to assist them.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by crazysim on Sunday December 15, 2019 @02:54PM (#21798529)
They're teasing something about this for H1 2020. I am really looking forward to it.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by hprotagonist on Sunday December 15, 2019 @11:43AM (#21797084)
This is why we have dotfile repos.

i’m like 60% sure that this is why nixOS was born at all: some very dedicated emacs or vim user got so fed up with moving configs around that they built an entire package manager/distro/thing to solve their config issue for all time.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by zenhack on Sunday December 15, 2019 @06:39PM (#21799750)
Except that Nix doesn't manage your home directory! (though some folks have put together some less-than-prime-time solutions).

That's actually something that's a major hole for me; it would be like twice as useful if it did. But yeah, my solution is just: https://github.com/zenhack/vim-config

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by braindongle on Sunday December 15, 2019 @11:51AM (#21797146)
Can anyone comment on the state of Vim emulation in Vscode? I'm in Android Studio largely because of its support for my .vimrc, without which I can not live. But I see[1] that there have been recent commits related to this in Vscode. How good is it? Other thoughtful comparisons between life in JetBrains world vs Vscode welcome as well.

[1] https://github.com/VSCodeVim/Vim/commit/3158194561fa2fba921b...

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by braindongle on Sunday December 15, 2019 @12:40PM (#21797535)
Update: Curious, I took Vscode for a spin again and installed the latest Vim plugin. Although .vimrc keybinding support is supposed to be there, I'm getting no love. So new ticket for the maintainers [1]. The thing is Vscode is SO snappy and slick, I'm going to switch anyway :)

[1] https://github.com/VSCodeVim/Vim/issues/4384

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by rjblackman on Sunday December 15, 2019 @06:50PM (#21799797)
over the years, i've learnt that learning to work with vanilla vim commands is the best way to go. any editing plugin feature is just an extra command character or two away if you know the basics very well. this means i am instantly productive in any ide that has a vim plugin.

in fact i'd extend that to bash as well. i only use very minimal configuration these days.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by big_chungus on Sunday December 15, 2019 @12:07PM (#21797272)
Vim support is still pretty meh, though better than some others. The onivim guys are still plugging away at libvim [0], and I'm really hoping once it's stable, someone integrates it with vscode and other editors.

[0]: https://github.com/onivim/libvim

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by mkolodny on Sunday December 15, 2019 @06:43PM (#21799768)
I have a pretty extensive .vimrc, and use VSCode as my primary editor. Since VSCode didn't have .vimrc support when I set it up, I ended up translating my .vimrc into VSCodeVim's settings.json. It took a bit to figure out how, but now I prefer using vim in VSCode to using it in the terminal.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by mffnbs on Sunday December 15, 2019 @12:08PM (#21797276)
I use both and have contributed to the IntelliJ extension. I haven’t noticed any functional difference between the two extensions and they both fit all my use cases.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by chrisseaton on Sunday December 15, 2019 @12:46PM (#21797585)
> my .vimrc, without which I can not live

How did you become unable to do basic text editing without a specific editor setup? Why do people become so dependent on tools?

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by zenhack on Sunday December 15, 2019 @06:55PM (#21799819)
I've been using vim for roughly half my life at this point. What I've found is that actually using the editor is so thoroughly muscle memory at this point that using another editor, where I actually have to consciously think about how to do something, is incredibly distracting.

It's not like the difference in input speed is really meaningful; as you'll see someone point out in any discussion about this stuff, the bottleneck in programming is thinking.

But what I find will often happen is:

1. I settle on a course of action. 2. I go to actually do it. 3. The editor doesn't do what I expect, because it's not vim. 4. I am momentarily confused, and have to think for a minute about how to do what I want. 5. I lose my train of thought entirely. 6. Rinse, repeat.

So for me it's not so much about any specific thing the editor does to make me productive. I do have opinions about some things, but what's important is that it just fades into the background and lets me think about the problem I'm trying to solve.

Beyond just being "different," I tend to eschew IDEs for much the same reason -- while many of the advanced features seem useful, I find them too distracting to be worth the trouble. Just me and the code, please.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by sooheon on Sunday December 15, 2019 @01:22PM (#21797840)
Man is a tool using animal. Anyone else could take your lament and turn it around on something you depend on every day.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by HeWhoLurksLate on Sunday December 15, 2019 @01:37PM (#21797940)
I worked at an automotive shop for a while. Let's go with an impact wrench for an example.

In the car shop world, impact wrenches are primarily used for the installation and removal of wheels on vehicles.

The impact wrench I started with had a single internal hammer- the thing that makes a click noise and applies torque. After a while of using it, I could hear when the wheel was seated correctly, and when it wasn't.

Later, that tool broke, and got replaced with a dual-hammer one- and all of a sudden, I couldn't hear-- feel-- when wheels were on right, and it took me a few vehicles to adjust to the new noise, weight, and feel of the tool. I got used to the new one eventually, but I still liked the noises that the original wrench made more.

Before I adjusted, I was unable to perform that part my job correctly because I didn't know exactly how to use the new thing that was identical in use-case to the old one.

My CAD program of choice doesn't have many keybinds stock- and so I've bound my own shortcuts to different things buried under various menus. I also have a Logitech G502, which has buttons on the sides of it, that I've also bound to some of the more-used, harder-to-get-to functions. It's much easier to open up the parameters table- which I use heavily to tweak designs I make. It's the way I like to do things, and that one bind on the side of my mouse saves me from rooting through menus all the time trying to find the same thing over and over again. I set up that bind almost two years ago, and I've been using it ever since.

When I got a new laptop recently, I had a hard time doing CAD until after I ported over all my keybinds and stuff.

Now to answer your question- because those of us who use powerful tools to build custom stuff also like to customize the tools we have for the task at hand. A developer who's used to their setup that they live with every day will undoubtedly have a hard time using the factory settings, and an even harder time working with someone else's bindings.

Why do people become so dependent on tools? Because we mold them to suit our desires, and they become an extension of who we are, and what we can do.

Relevant XKCD- https://xkcd.com/1205

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by echelon on Sunday December 15, 2019 @12:53PM (#21797642)
> use intellij for Rust

Use CLion instead of IntelliJ. It has much better debugging support.

I've used both VSCode and CLion quite a bit for Rust, and I prefer CLion. It's got a much better understanding of the language.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by Waterluvian on Sunday December 15, 2019 @03:02PM (#21798588)
Forgive me but aren't they just identical apps? I swear I thought they were all the same base program with a different set of plug-ins. And you could basically make any of them behave like any of them.
Re:JetBrains: $270M revenue, 405K paying users, $0 raised by echelon on Sunday December 15, 2019 @05:22PM (#21799378)
No, they are surprisingly not! IntelliJ doesn't have the debugging support CLion does and won't let you set breakpoints across language boundaries.

IntelliJ also sucks for Ruby and Go compared to RubyMine and Goland. Even with the language plugins.

Re:JetBrains: $270M revenue, 405K paying users, $0 raised by Waterluvian on Sunday December 15, 2019 @07:34PM (#21799970)
No wonder I couldn't set breakpoints. Going to try again with CLion then. Thanks for sharing!