http://chiselapp.com/ is where most of the active TCL repositories are stored, at least for fossil. For git, it seems to be a mix of GitHub and gitlab.
Hm. Not an expert on the subject but I think by some readings of that you could consider it to be one. After all, if you duplicate the setup you're going to bug that gives you exactly the same kind of advantage that a template attack gives you, one where you have many more samples than you'd have if all you had to use was the target itself. You could even try to parallelize this to determine sensitivity to conditions by creating a number of setups all slight variations on the target. This should help to establish how reliable the output of the actual side-channel is.
Vim commands are like a language - you don't route learn combinations, only the individual "words", and you string them together dynamically, like you would do with English words in a sentence.
It was a very good read. But not what I was expecting. If vim is indeed speaking a language this is what I would expect a vim tutorial to have.
1. Basic commands.
2. Syntax to chain basic commands.
3. Ability to form other commands from basic commands.
4. Way to write macros.
Instead most vim tutorials I have read present with a list of several commands to memorize and then a cheat sheet to navigate you through a jungle. Often they are letters, and not meaningful words. So they are difficult to put into ones brain. Couple that with vim's modes. And you are set with a perfect recipe for disaster in case of a new bie.
If vim is indeed speaking a language than manuals and tutorials teaching it, must explain how to speak that language.
This is 2012 and the need to memorize commands, and read cheat sheets to edit text doesn't belong to our times.
What I seem to get is vim aims to provide sed, grep, tr, cut etc kind of tools inside a text editor in form of some interplay of letters and words. How I haven't figured out till today's date.
Every time I've tried to learn vim, I've quit trying to memorize 'yy P...' kind of commands. That happens as I first can't memorize random arrangement of characters. Secondly if its not random, I've not understood how to arrange and use those letters to make meaningful commands.
1. "Basic commands" are what you know after 30 minutes of
$ vimtutor
2. "Syntax to chain basic commands" is what you get when you think about what you are going to do. Like in any spoken or written language: "copy this line and paste duplicate it 10 times above" would be
yy copy this line
10P paste above, 10 times
You have verbs (yank, paste, delete, join, move down…), direct objects (this word, this line, this html tag, this function, this paragraph…), indirect objects (up to this word, between line y and line x…) and, well… "counts" to do all that multiple times.
Vim's language is a lot more natural and intuitive and efficient than any variant of Cmd+Left - Shift+Ctrl+Right - Right - Cmd+c - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v - Down - Cmd+v
Saying it's too arcane/complex/hard is just lying or being lazy.
3. "Ability to form other commands from basic commands" is achieved by writing small (or big) functions and bind them to your own commands.
4. "Way to write macros" is by not writing macros. You record a sequence of commands/keystrokes and run it later:
qa record a macro in register a
yypj duplicate this line and move to the line below
q stop recording
10@a apply the macro 10 times
No need for a cheat sheet if you are commited and don't rush it.
#3 is just using the commands in sequence. They aren't new commands.
#4 is advanced and I've never had a need for it yet.
Let's pick some apart:
ddp:
dd - delete line
p - paste line below
This swaps a line because when you delete a line, the line below it moves up and you end up on that line. When you paste an entire line, it pastes to the next line.
ddkP:
dd - delete line
k - move up 1 line
P - paste line above. (Shift usually means 'opposite direction', so it pastes above instead.)
I don't think of these as commands as such. I just think, I want to delete this line, and then I want to place it here. He's providing these as commands to show that Vim can handle the same features as Sublime Text, but he's doing it in a non-Vim way, as far as I'm concerned.
You don't memorize non-basic commands. You just use basic commands until you get what you need, and it happens that the advanced commands for most other editors can be done with just the basic commands of Vim.
He's providing these as commands to show that Vim can handle the same features as Sublime Text, but he's doing it in a non-Vim way, as far as I'm concerned.
As I said, learning the basic commands and using them. There's no need to remember a key combo for 'swap lines' because it's just 2 basic commands used in succession. I never even think of it as 'swap lines' because what I want to do is remove a line, then place it somewhere else. And that's what the commands are in Vim to make it happen.
Why would that be, vim seems to be difficult to use because a good manual that actually teaches how to use vim isn't available yet.
In fact it was surprising to me when I learned vim commands are actually a form of some terse language. Because I was only of an assumption that most vim commands are random string of characters you need to memorize. And when you memorize and practice enough you become productive.
I would be definitely well suited for vim, because I like terse language paradigms in unix like sed, awk, perl. I think if I had known about these aspects of vim a while back. I would have tried to write a few essays myself to understand using vim effectively.
> Why would that be, vim seems to be difficult to use because a good manual that actually teaches how to use vim isn't available yet.
What manuals have you tried? Have you tried `vimtutor`(if vim is installed, just run vimtutor from the sell).
> In fact it was surprising to me when I learned vim commands are actually a form of some terse language. Because I was only of an assumption that most vim commands are random string of characters you need to memorize. And when you memorize and practice enough you become productive.
You need to know a lot of words before you can form intelligible sentences. There is no not-knowing `h,j,k,l,esc,d,x,p,b,w,i,I...`. So yes, you do need to memorize basic operations before you can chain them. Most of the things in this cheatsheet are important to know http://tnerual.eriogerg.free.fr/vimqrc.pdf
And once you have learnt the basic, there is no manual to tell you how to combine them, because there is no syntax to do it - you just run them in sequence. It has already been pointed out in the SO thread, and various other threads here.
> I feel tempted to give vim a try now.
Your temptation will last all of 1 day. If you give up, vim isn't for you. It takes a minimum of 15 days to a month to s
top missing whatever editor you are using right now, then another month to actually start liking it.
I am emacs user. The problem isn't patience with vim. The problem really is deciphering the `h,j,k,l,esc,d,x,p,b,w,i,I...` sequence.
So as long I can't make sense of what random stream of characters mean, any amount of practice to put them into finger memory is going to be a exercise in frustration.
> The problem really is deciphering the `h,j,k,l,esc,d,x,p,b,w,i,I...` sequence.
> So as long I can't make sense of what random stream of characters mean, any amount of practice to put them into finger memory is going to be a exercise in frustration.
That wasn't a sequence - that was basic movements and operations you need to compose sequences.
d2w2jp - delete 2 words, move 2 lines up and paste(what was deleted)
d2w2j^p - delete 2 words, move 2 lines up, go to beginning of line(^) and paste(the deleted words)
df)/test$F{p
delete till ) (df)), search forward for test (/test), go to end of line where search is found($), search backward for { (F{), and paste(p)
They aren't random stream of characters if you know basic movements and operations.
As far as emacs goes, I find vim to be superior when it comes to navigation. When I am using emacs, I have a minimal configuration file for a few things I absolutely need:
"M-x goto-line line-number <CR>" is just too much typing for going to a specific line.
What emacs wins at is external tools integration. Vim doesn't support async command integration, and per the developers, never will. Vim developers believe vim is a text editor, and it has no business running shells; a stance I am ok with. But that means there never will be a slime for vim, at least not the way it works for Vim i.e you can't execute chunk of code, and be dropped in a debugger if an exception occurs. And there will never be a debugger which seamlessly integrates with vim. I do miss these things sometimes, but there are decent alternatives - I love my zsh, don't need it in an editor; slime, sans debugger is just configuring vim to send selection to repl etc etc.
How is this scientific? All I see is a lot of speculation with no experimentation/testing. Vague similarities to another study don't cut it - we are not monkeys, and the monkeys weren't playing D2/D3. He's just assumed the premise that D3 is less addictive than D2, and the rest is an argument made to fit this assumption. I'm not saying he's wrong, just saying that this is bad science.
The "scientific" part was pretty tongue-in-cheek given all the handwaving I do, I obviously didn't hook up electrodes to anyone's brain while they're playing (although that would be fascinating). I'll edit the blog title to put it in quotes, can't edit the submission title though.
Give yourself some credit: you have a testable hypothesis. We could conceivably monitor the brain activity of Diablo 2 and 3 players and see if they match your predicted behavior. That we could either confirm or contradict your hypothesis means that we could actually provide support or falsify your theory.
OK, so suppose you measure metabolic activity in (say) nucleus accumbens, with pretty sensitive equipment, for a number of different players (experienced or naive? D2 vets or not?) as they somehow play this commercial computer game with their heads stabilized, for not very long periods of time. You aggregate the data across individuals, losing a ton of information.
Now what is the hypothesis - that D2 will drive significantly more metabolic activity than D3, because some blogger thinks that it is a better game?
This would tell us nothing of any scientific interest whatsoever. (Not to say you couldn't make a poster or even get grants for such rubbish, with the right connections)
If there is a testable hypothesis in here, it is so bizarrely specific as to have no practical value nor any value in distinguishing among meaningful theories about how the brain works.
The theory isn't about the brain itself, but about the enjoyment cycle of Diablo 2 and Diablo 3. The hypothesis is clearly stated in his post: it's the graphs he drew for the brain activity of Diablo 2 and 3. He is predicting a very specific reward-frustration cycle for each game.
A testable hypothesis whose result will either support or falsify a theory is the very definition of science.
Note that this theory has nothing to do with whether or not one likes the experience. Someone very well may like the experience with more frustration more, for whatever reason. The theory is not "This is why Diablo 2 is better than Diablo 3," but an explanation for why many people may feel less satisfaction playing Diablo 2 than Diablo 3.
Translating these kinds of addiction studies (mostly in animals for ethical reasons) to making games more addictive (but always referred to as making them more engaging) is a pretty established industry at this point.
It's not my field, and I don't know if the analysis in the blog post was flawed or not, but there are plenty of people trained in the field who work in the video game industry (and the gambling industry) and they definitely show results with pretty solid metrics under well controlled conditions. Balance the reward cycle and tune the levels of challenge and frustration properly and you get players to spend more time in the game.
I agree that it's a stretch to conclude that D3 is less addictive than D2 but I took it as interesting speculation based on actual science.
Agreed. Good loot still drops (look at AH), I'm using 3 pieces found myself. I've also found multiple drops worth 1M+ gold, which is also exciting. Maybe the loop is slightly longer than D2 but that doesn't make it non-existent. Anyone can draw a graph.