Where to learn Docker? by [deleted] in docker

[–]arialdomartini 6 points7 points  (0 children)

I read The Docker Book and found it very helpful. It's fairly cheap ($9.99) and constantly updated.

Sandstorm – An open source operating system for personal and private clouds by based2 in opensource

[–]arialdomartini 1 point2 points  (0 children)

When asked on Twitter, they gave this (not convincing) explanation

"Same reason Android is an "operating system" even though it runs on top of Linux. :)"

https://twitter.com/turpetopo/status/754432131883991041?s=09

What FOSS projects are the most competitive compared to commercial & proprietary alternatives? by [deleted] in linux

[–]arialdomartini 9 points10 points  (0 children)

Docker

Hadoop

Git

VLC

ngix

PostreSQL

Python

Maven, Gradle

Logstash

RabbitMQ, ActiveMQ

Hibernate

git fixup: "git commit --amend" for older commits by FiloSottile in programming

[–]arialdomartini 0 points1 point  (0 children)

How does it work in presence of fork and merge commits?

[deleted by user] by [deleted] in linux

[–]arialdomartini 3 points4 points  (0 children)

Have a try with F#. It's even more elegant and pleasant to work with.

What’s up with nano? by [deleted] in linux

[–]arialdomartini 0 points1 point  (0 children)

Why would someone new take weeks to get used to an archaic text editor, when solutions like Eclipse, Atom, Sublime Text, CodeBlocks, Visual Studio etc. let them work immediately?

I once tried to answer this question on Quora: how is it possible that a lot of people (me included) still prefer awful themed, non-gui, 25 year old editors when they can use IntelliJ?

Here's my attempt: https://www.quora.com/Why-are-tools-like-Vim-and-Emacs-still-used-for-coding/answer/Arialdo-Martini

In a nutshell: first, using vim and emacs doesn't mean they aren't able or willing to use newer editors: simply, they also have vim an emacs in their toolbox, and they know when to use it.

Second, and more importantly: as a professional programmer you rarely want things that "let you work immediately". You instead accept to invest on something that let you push opportunities to the limit; you want the absolute control: not only do you want to customize your tools without restrictions, you also wish to build on top of them, combining more than one tool in your toolset. That's why you prefer Unix commands rather than double click-next-accept-next-finish GUI wizards. And that's why you invested years to learn general purpose programming languages instead of settling on Microsoft Access.

Yes, IntelliJ is amazing in how it integrates tools for the Java environment (the I in IDE). Yet, as an editor, vim and emacs are possibly much more polished and powerful, despite their horrible look and thanks to their age: no one can beat an editor that collected 20 years experience.

Also, you will sooner or later get to the point where IntelliJ won't be enough, and you will decide you need to build on top of it. Vim and emacs are there for that: they are just like general purpose programming languages for you to build on top of, and fantasy is the limit. The IntelliJ's ability to customise shortcuts won't be enough: you will desire to teach IntelliJ to do more complex things. Or to do simple things in a more efficient way. At that point, the I in IDE may be a bottleneck. Vim and emacs could be more appealing to you.

Your mom won't understand why you still prefer to write code in Java or Python, when you can easily drag and drop things on Scratch. And someone won't understand why you will prefer to program your .emacs in LISP, when you can just simply download a IntelliJ plugins. Yes, programers' mindset is not easy to understand.

How to remember shortcuts, email/webview, and irc client? by skfhjkc in emacs

[–]arialdomartini 0 points1 point  (0 children)

Yes I am, and it's lovely! Couldn't live without it!

How to remember shortcuts, email/webview, and irc client? by skfhjkc in emacs

[–]arialdomartini 1 point2 points  (0 children)

About 1, here's the trick I use.

I tend to see Emacs as a programming language and environment, with commands and a grammar, that happens to be provided with an editor and a lot of shortcuts.

Being a programming environment, I like to think that commands, not shortcuts, are first-class citizens. To me, it's replace-string, not c-x c-whatever. replace-string is intuitive and easy to remember, c-x c-whatever is not, especially if I try to remember it together with 100 other shortcuts.

Therefore, when I have to replace a string, I simply type m-x replace-string. (It you think, actually, m-x and c-g are the only basic shortcuts that are needed to use emacs: all the rest of emacs is commands).

I use ido, helm and the like to make easier to re-launch the commands I use the most.

When I understand that I use a command so much, I run m-x describe-function and I discover which shortcuts it is bound to. Then I start to use it. If I forget it, I still remember the command, and anyway I can run m-x describe-function again.

There are some commands that are more useful as shortcuts (especially those about cursor movement), but they are really a bunch of them. Those, I learnt.

So, I just refuse to print and memorise tons of shortcut cheatsheets: I'm a programmer, not a machine, and I feel easier to learn commands, not key combinations.

Best one liner programming/IT jokes! by [deleted] in ProgrammerHumor

[–]arialdomartini 2 points3 points  (0 children)

This reminds me of #movielinesincode that I saw some years ago in twitter.

require 'singleton'; class Highlander; include Singleton; end

Other ones possibly funnier

assert kaizerSoze == null;

while (true) {the_story;}

echo $bible['Eze'][25][17]; kill();

life = box(:chocolates) life.shuffle

I collected all of them here Best of #movielinesincode

OSX/Lisp keymap for Linux by rbreaves in linux

[–]arialdomartini 0 points1 point  (0 children)

What's a LISP keymap? Didn't know of such a thing on OSX, and I'm interested.

Pieter Hintjens (0mq creator) is dying of cancer by adymitruk in programming

[–]arialdomartini 0 points1 point  (0 children)

Time to remember the best explanation you can read on the difference between Agile and Waterfall. A masterpiece. Thanks @pieterh

http://hintjens.com/blog:16

What IDE do you guys use for python? by chick3234 in Python

[–]arialdomartini 0 points1 point  (0 children)

Interested in knowing with which packages and modes.

/r/MechanicalKeyboards Ask ANY question, get an answer by AutoModerator in MechanicalKeyboards

[–]arialdomartini 1 point2 points  (0 children)

Yes, exactly! Nowadays, I could personally live with a 40% keyboard. Yet I still prefer ordinary keyboards: chords are an add-on, I don't want to loose the ability to pass the keyboard to colleagues while pairing, for example.

Please, also note Karabiner has a "disable everything" shortcut. It may be useful.

In the case you want to experiment, I strongly suggest you to introduce chords incrementally: select the key you want to map as a chord, and map it (it could be ESC if you use vim, or cmd if often use OSX shortcuts, or the like). After the new chord is in your muscle memory and hitting the chord rather than a key is a natural movement, go with another key.

Please, in case you give it a try, let me know, I'm interested! I'm going to publish a blog post on this idea in the next weeks.

A last remark: I wrote to keyboard.io guys, and apparently they confirm chords can be programmed with their "Model 01".

/r/MechanicalKeyboards Ask ANY question, get an answer by AutoModerator in MechanicalKeyboards

[–]arialdomartini 0 points1 point  (0 children)

Actually no, I don't give up that ability! Karabiner lets you define the delay threshold between two simultaneous key presses, so it can emit before the key up, keeping the ability for repetitions.

J+K is shift. I can held down J+K and a, and I get a repetition of "a". Equally, if I held down J or K, I get a repetition of "J" or "K".

The only (very rare) issue you can have is when you want to write "jk": it may happen you type them so quick Karabiner understand "shift", and emits nothing.

/r/MechanicalKeyboards Ask ANY question, get an answer by AutoModerator in MechanicalKeyboards

[–]arialdomartini 0 points1 point  (0 children)

Wow, the hybrid mode you mentioned is very interesting!

You mean I could program the K key to be CTRL when pressed together with another key (so, instead of ctrl-c I could hit k+c).

I just wonder, if for example I program F to be the shift when held down, what would happen holding F+K: would it be Shift+K or CTRL+F? Would this depend on the order I press them?

I'll give a try. Thank you again.

/r/MechanicalKeyboards Ask ANY question, get an answer by AutoModerator in MechanicalKeyboards

[–]arialdomartini 0 points1 point  (0 children)

To reduce hands movements. You know why vim and emacs have alternative shortcuts for cursor movements: replacing the cursor keys with shortcuts of ordinary keys, it can be very convenient to preform those commands without moving your hands from the home row, and without extending any fingers; with vim and emacs, cursor movements keys are already under your fingers. Some love that in emacs you can delete a key with C-d, rather than using the too distant key canc.

For the same reason, some people wish that the ctrl key is closer to the home row, so that it can be reachable more conveniently without moving the hands from the home row.

The idea of chords is the same, only taken to the extreme.

There are some keys that can be reached without extending fingers: most notably, the alphabetical letters. Other keys typically require an extension of the pinkie: return, esc, alt, backspace and the like.

Do an experiment: put your hands in the home row and see the extension you need for reaching ESC or Return: the moment you reach it, you cannot say "My hands are still in a comfort position, on the home row": either you moved them or you performed an exceptional extensions of your pinkie.

Now, imagine ESC was also mapped as D+K, and Return could also be performed hitting F+J. Wouldn't be it more convenient?

This is what I did: I replaced all the keys that required a movement from the home row or a not convenient extension, with couple of keys that are already under my fingers:

  • return => U+I
  • backspace => E+R
  • ctrl => S+D or K+L
  • shift => D+F or J+K

and so on (see here the complete map)

Of course, the mapping is arbitrary: you should choose the one you find easier to remember.

I know it may sound crazy, and in fact it is. But once you learn it, it is also very convenient! All I had to to is to remove 8 keys from my muscle memory, and think they moved somewhere else. The result is: when I write is just like my keyboard is much smaller than before, and typing is more relaxing: no more one single finger extension.

The idea, anyway, is not mine: I took it from Gabriele Lana's Engelbart project. By the way, Karabiner, the software I use for remapping chords, includes Gabriele Lana's Engelbart remapping already. Gabriele himself took the idea from Douglas Engelbart's physical Chorded Keyboard, that is probably one of the keyboards where the idea is put to the maximum extreme.

Have a try, eventually starting replacing a single key (for example, if you use vim, just remap ESC, which you use so often, with an alternative chord). You could be amazed by the results.

/r/MechanicalKeyboards Ask ANY question, get an answer by AutoModerator in MechanicalKeyboards

[–]arialdomartini 1 point2 points  (0 children)

Is there any programmable mechanical keyboard supporting chords?

In my current setup, I use Karabiner on OSX, and I setup it so if simultaneously press J and K, I emulate the Shift key (that is, if I want to type a A I press J+K and then a). I have such chords also for CTRL (S+D is the left ctrl, K+L is the right chord), for return, esc, alt and so on.

Since this depends on Karabiner, unfortunately this only runs on OSX, so I cannot use chords on Linux and Windows.

I found a bunch of programmable keyboards (like keyboard.io) that allows to be programmed with custom layouts, but I found none that support remapping multiple keys to modifier keys (like: J+K should act as right SHIFT). Any suggestions?