Lesser known Git commands - <AUTHOR> https://hackernoon.com/lesser-known-git-commands-151a1918a60#.uff1lmouf <comment><USER2> I've seen more stash accidents than any other kind with git. Stashing is more dangerous than committing or branching, and to me it doesn't seem to provide any advantages... do people actually find stashing easier than branching? Is it just because when you branch you have to name it, and that causes friction? I stay away from stash.

Right from the man page: "If you mistakenly drop or clear stashes, they cannot be recovered through the normal safety mechanisms."

[https://git-scm.com/docs/git-stash](https://git-scm.com/docs/git-stash)

\--

I do like shorty. My version:

      alias gits='git status -sb'

\--

My next fave is rebase the current branch against it's upstream branch point:

      [alias]
        rearrange = "!git rebase -i $(git merge-base HEAD @{u})"

git rearrange ftw.

<comment><USER3> I use stash when I forget to branch. So I might be working and then realize I never branched. So I stash my changes, create a new branch, and then pop my changes on the new branch.

<comment><USER4> My #1 use of stash is as the quickest way to express "get rid of all this crap". I rarely intend to ever retrieve it.

<comment><USER5> 'git reset'.

<comment><USER4> Doesn't do the same thing, without some more options. Stash is shorter.

</comment></comment></comment></comment></comment><comment><USER6> Warning: not actually git commands, rather TFAA's aliases for possibly useful combinations of switches and/or commands.

<comment><USER7> See, switches in git are there because git maintains backward compatibility. Sometimes a switch really would logically be better as a whole new command. But it's a common refrain to hear that git hides useful things in the switches.

This article is a great way to find those hidden things.

<comment><USER6> > See, switches in git are there because git maintains backward compatibility.

Switches are there because git commands tend to greatly leak the abstraction and group behaviour in terms of the underlying plumbing, and because Git maintainers most likely would rather add new switches to existing commands than new commands intersecting with existing ones.

> Sometimes a switch really would logically be better as a whole new command.

Which could trivially be done without BC issues and thus can't be an explanation why existing commands keep growing new switches.

> This article is a great way to find those hidden things.

It would have been a useful article if it had been about showcasing interesting or useful git switches.

</comment></comment></comment><comment><USER8> Some of my aliases, first some basic shortcuts:

      freshen = commit --amend --no-edit --date=now
      cont = rebase --continue
      br = branch --column
      recent = branch --sort=committerdate
      idiff = diff --cached
      ff = merge --ff-only
      co = checkout

Show what's left to do in an interactive rebase:

      todo = !cat `git rev-parse --git-dir`/rebase-merge/git-rebase-todo

Set tracking to to origin/<the same branch name>

      upstream = !zsh -c 'git branch --set-upstream-to=origin/$(git symbolic-ref --short HEAD) $(git symbolic-ref --short HEAD)'

I use this to swap my work to home e-mail or vice-versa if I've got it wrong. Need to specify an initial commit.

      allmine = filter-branch --env-filter 'email@example.com firstname.lastname@example.com'

      vim = "!gvim `git ls-files -m`"

</comment><comment><USER9> A few that weren't mentioned below:

      git alias start 'checkout @{u} -B'

All my branches track origin/master (rather than local master), which makes it easy to git push / git pull without extra arguments. This will checkout a new branch from whatever the current branch is tracking. Usage: `git start my-new- feature`

      git alias track 'track = branch --set-upstream-to'

Sets up your current branch to track some other branch. Usage: `git track origin/master`.

      git alias gcbr 'gcbr = !git branch --no-track --no-color --merged | sed 's/[ *]*//' | grep -v master | xargs -n1 git branch -d &> /dev/null || exit 0'

"Garbage Collect BRanches" will delete any branches which are already merged into your current branch (excluding master). Basically, any branch which is "safe" to delete. (This one has been handed down through the ages; I initially found it on the skeleton dotfiles when I started working at Facebook. Thanks, whoever!)

<comment> brown9-2 nitpick: I don't think you need --no-track in `branch --merged` as no branch is being created with that command.

</comment></comment><comment><USER10> I'm no Git wizard, but switching from "merge" to "rebase" and from "add <file>" to "add -p" cleaned up my repos quite a bit.

<comment><USER11> One reason I like git so much is that right there. The author is interested in reasoning about what branch certain changes came from, but I have to wonder why. Once changes are squashed and ff-merged, it's pretty clear where they came from.

</comment></comment><comment><USER12> > so it's good practice to create an empty commit as your repository root

While I'm aware of issues with rebasing the root commit, I've never heard this advice before and it seems unnecessary.

<comment><USER13> Rebasing the root commit has been possible for a while using `git rebase --root`.

[http://stackoverflow.com/questions/30277149/how-to-use- inter...](http://stackoverflow.com/questions/30277149/how-to-use-interactive- rebase-on-the-first-root-commit-of-a-branch) goes into more detail.

</comment></comment><comment><USER14> > git it and empty root commit

Why doesn't git init does this by default? It would be nice if every repo had an empty root commit (with no author, date,... so it has the same commit hash), then every two repos would have a common commit. Semantically it would mean that repos would be just specific branches of a hypotetical large repo.

<comment><USER15> You can already merge two divergent histories with the --allow-unrelated- histories option. (At the data level, merge commits don't care that their parents have a common ancestor, but the git merge command does this as a safety check.)

In other words, all repos already _are_ subsets of the ur-repo. The semantically-interesting data in git is not the commits themselves, but the branch names given to specific commits in specific (groups of) repos. :)

<comment><USER14> Interesting, now I learned that a git repo can have any number of commits that have no parents. It can be achieved by fetching an unrelated repo and merging with --allow-unrelated-histories or by using git checkout --orphan.

> safety check

Why is this considered unsafe? Only to avoid pulling from unrelated repos by accident? The man says for --allow-unrelated histories:

> As that is a very rare occasion, no configuration variable to enable this by > default exists and will not be added.

Well this is quite harsh, it looks like it's considered to be rather unsafe.

<comment><USER15> Yeah, I imagine it's unsafe because "git pull" implicitly creates a merge commit when it can't otherwise update, and your remote URL might now be pointing at a different history. Maybe github.com/someproject/somecode got replaced by a clean rewrite and you're actually looking for someproject/somecode-old. Maybe you were pointing at an unofficial git-svn import and now there's an official git migration. And so forth.

(Personally, I think the right way to address this is for "git pull" not to implicitly create merge commits...)

</comment></comment></comment></comment><comment><USER16> This doesn't even look like I wrote it, but I thought I did and use it all the time: "What was that (private) branch I worked on a few weeks ago?"

Just put this shell script in /usr/local/bin or wherever as "git-branch-dates"

      git branch-dates
      #!/bin/bash

      for k in `git branch|perl -pe s/^..//`;do echo -e `git show --pretty=format:"%Cgreen%ci %Cblue%cr%Creset" $k|head -n 1`\\t$k;done|sort -r

</comment><comment><USER17>
      alias such=git
      alias very=git
      alias wow='git status'

      $ wow
      $ such commit
      $ very push

[https://twitter.com/chris__martin/status/420992421673988096?...](https://twitter.com/chris__martin/status/420992421673988096?lang=en)

</comment><comment><USER18> My personal favorite two:

        jschroeder@omniscience:~$ git config alias.up
        pull --rebase
        jschroeder@omniscience:~$ git config alias.down
        push

They can be used thusly:

       git up && git down

<comment><USER12> While these aliases are useful, I'm confused why "down" means "push".

<comment><USER19> "The enemy gate is down."

<comment><USER20> I love the implication that the upstream repo is the enemy, so you mentally put it down. Way to go Ender.

</comment></comment></comment></comment><comment><USER21> I like the `git grog` command, I might actually use that.

The idea of `git please` is not bad but it made me wonder if it could be possible to go even further.. a variant on --force that only force-pushes IF NOT ONE HAS PULLED YET.

I can see why this wouldn't be built into git core however, as it's quite stateful and depends on tracking other people's fetches, which probably isn't easy.

</comment><comment><USER22> one thing i wish git would do would be to allow me to specify default options for certain aliases. for example, I quite like the `--short --branch` format of git status. but I can't do this:

      [alias]
         status = "status -sb"

because git just ignores those. i am then forced to setup non-standard commands just to bend git to my will.

in some cases, there are distinct `git-config` options I can set to get the right behavior, but that's way less flexible since stuff like `--force-with- lease` don't have their own config options.

the rationale behind this is, according to the git-config manpage, that "To avoid confusion and troubles with script usage, aliases that hide existing git commands are ignored". but then there's --porcelain for that, so i don't understand that limitation.

sigh.

<comment><USER23>
        [alias]
          pull = push
          push = pull

:)

</comment></comment><comment><USER24> Some of the aliases are funny but could be renamed for brevity.

Also grog is making me feel extremely groggy.

<comment><USER6> "commend" seems especially bad, it's both unclear and longer than "amend" would be.

My aliases list is pretty small, aside from amend I have

* get (pull --ff-only --all -p), basically a hard sync with all remotes, updating the current branch if there are no conflicts or divergences

* summary (log --oneline --no-merges), given a range from git fetch/pull, provides an overview of the commits you just fetched

* original (!git show $(cat .git/rebase-apply/original-commit)) during a rebase conflict, shows the original commit whose application failed (it can be difficult to untangle a rebase conflict, this sometimes helps a lot)

</comment></comment><comment><USER12> > If in doubt, the long one (git staaash) will always restore your worktree to > what looks like a fresh clone of your repository.

Not necessarily. This depends on what branch you're on as well as whether or not it's up to date with the remote.

</comment><comment><USER25> My most useful bash alias (when you go back to master and want to start at the most up to date everything before creating a new branch):

      alias grm="git fetch origin && git reset --hard origin/master"

<comment><USER26> same here but I switch to master first:

resync = !git reset --hard HEAD && git checkout master && git reset --hard origin/master && git pull

or with a parameter to do the same with any branch:

resync = "!f() { git reset --hard HEAD && git checkout $1 && git reset --hard @{u} && git pull ; }; f"

<comment><USER27> I use a very similar version of this, and people are often surprised that I'm working directly on master. Well, when it's ready to go, `git checkout -b feature/name; git push origin HEAD; git resync`.

</comment></comment></comment><comment><USER28> My two favourite aliases :

        mo = ls-files -m
        lol = log --oneline --decorate --graph

`git mo tests/` gets you modified files for the tests folder.

`git lol` I think as the command line version of gitk

</comment><comment><USER29> Nothing esoteric, but I advise every person I teach git about to put this in their .bashrc:

        alias s='git status'
        alias l='git log --graph --oneline --decorate --all --show-signature'
        alias d='git diff'
        alias dc='git diff --cached'
        alias c='git commit -m'
        alias ca='git commit -am'
        alias a='git add -p'
        alias u='git checkout -p'

These probably saved me hours of typing by now. Especially `l` I think should be canon.

<comment><USER30> I don't know if you're aware, so this is just a friendly suggestion: if you define these as git aliases instead, you won't use your shell's namespace and have it available for other aliases. As git aliases you would run it like `git s` or `git ca`. If you also alias git to g it will be `g ca`. If you do that, don't forget to call `__git_complete g __git_main` in .bashrc for it to auto- complete aliases for `g` and not just `git`. For example, to define `ca`, run this

        git config --global alias.ca 'commit -am'

<comment><USER29> I am of course aware of git aliases (e.g. because OP uses them a lot) but it never occured to me specifically to shorten git to g and find a way to keep autocomplete working.

However, since these are by far my most typed commands (specifically, probably 40% of my executed commands are `s`), I strongly care about the difference even between 1 and 3 keystrokes.

Thanks for your feedback. I wonder if the downvote was because of using bash aliases or for something more substantial...

<comment><USER30> I never downvote anything, so I'm not sure, but maybe the use of "advise" and "canon" triggered negative votes?

<comment><USER29> Thanks (if you're still reading this thread), I didn't know "advise" carried negative connotations. I guess it's one of those words that I learned from a dictionary and never stopped to notice that English speakers use it only in much more formal situations than the word in my native language that I'm trying to evoke.

Should that maybe have been "recommend"?

<comment><USER30> English isn't my 1st language either, but the power of downvotes is misused a lot on the internet, especially when there's no public trail who downvoted. Advise and canon may just carry too strong of a meaning for those who grew up in English-speaking school systems.

</comment></comment></comment></comment></comment></comment><comment><USER31> I'm still getting to know Git, and I appreciate articles like this as they touch on approaches to Git that have benefits in the real world, but I can't help but feel that version control tools should be simpler.

Does anyone have any experience with version control tools that have worked out simpler to use than Git? I've heard good things about Darcs before (aside from its performance issues, which projects like Pijul are designed to address), are there any other tools that are worth investigating?

<comment><USER32> It depends what you're using it for. Many people use Windows every day without knowing things like how to remap a network drive--but it's nice to have it there when you need it.

If you're by yourself and just need to keep a linear history all you need is 'git init' 'git add' and 'git commit'\--if that's all you ever need, svn or any version control should work about equally well. But if you do need remote repositories, branches, rewriting your history, or commit hooks, it's there waiting if you're using git.

I feel like most of the different version control systems differ on those advanced features or how it scales for special needs. Git is great for decentralized and remote work, Perforce is better at handling histories with large binary files, etc. The basic features are fairly similar between them. Maybe there's a gui you like or a specific workflow, but I feel like that's a subjective choice.

</comment></comment><comment><USER33> _The first commit of a repository can not be rebased like regular commits_

That's not necessarily true. This can be done with:

      git rebase -i --root

</comment><comment><USER34> Nice list! I'll adapt some for my git workflow.

Here's some that I've created or collected over the years, in case anyone finds this useful:

[https://github.com/randombk/randombk- dotfiles/blob/master/ma...](https://github.com/randombk/randombk- dotfiles/blob/master/master-main/.gitconfig)

</comment><comment><USER35> For every repo I fork I usually add a remote named upstream pointing to the original.

So then, whenever I need to get my copy up to date with upstream it's:

        update = !git fetch upstream && git merge upstream/master'

It's probably easily changed to make the branch configurable, but I have only ever needed this with master.

</comment><comment><USER36> A couple of aliases I use all the time:

        [alias]
            graph = log --oneline --decorate --graph --all
            copy-logs-since = !git log --reverse --format=%B "$1".. | pbcopy

`graph` is similar to `grog` in the article. `git copy-logs-since <tag>` copies log messages since the tag, which I use for release notes. Very handy.

</comment><comment><USER37> > git commend quietly tacks any staged files onto the last commit you created, > re-using your existing commit message. So as long as you haven't pushed yet, > no-one will be the wiser.

Well, they might notice that the author and committer dates don't match, but you can add "\--reset-author" to _really_ make this undetectable.

</comment><comment><USER38> I like "git ready":

        ready = !git checkout master && git fetch -p && git merge --ff-only

The use case is for when you're done with a particular feature branch and ready to start something new. It puts you back on master and updates it in a safe way.

</comment><comment><USER39> Author's "commend" function I just call "cane"

git (c)ommit --(a)mend --(n)o-(e)dit

</comment><comment><USER40>
        git diff origin/master -- test.file

It will show you a diff of a file between the master branch of remote origin and your local branch. I use it way more than I can think of.

</comment><comment><USER41> Didn't know about those stash options. I've always used 'git stash save -u' to bring along the untracked files in the stash, that's the more common scenario.

<comment><USER42> I just usually do something silly like 'git add . && git stash', i had no idea it was built in...

</comment></comment><comment><USER43> Heres one I like to use sdiff = diff --ignore-space-change

</comment><comment><USER26> One of my personal favorite:

stp = !git stash && git pull && git stash pop

<comment><USER44> If you `git pull --rebase` by default, just set the rebase.autoStash config to true and git will automatically do this for you.

<comment><USER45> Can't believe I just learned about rebase.autoStash! That is super handy.

</comment></comment></comment><comment><USER46> git config --global alias.stache stash

</comment><comment><USER47> You baitin... how is a lesser known git command a git alias?</comment>


Create programs for all Amiga platforms with Lazarus - <AUTHOR> http://blog.alb42.de/2016/04/20/create-programs-for-all-amiga-platforms-with-lazarus/ <comment><USER2> Good to see Lazarus is still being developed. IIRC it's using Pascal as the base language, which may be of interest to some.

In a similar way, you can create programs for all Amiga platforms and a number of non-Amiga platforms using Hollywood:

[http://www.hollywood-mal.com](http://www.hollywood-mal.com)

This is the full list of supported platforms (at the time of writing):

AmigaOS 3 (m68k)

AmigaOS 4 (ppc)

Android (arm)

AROS (i386)

Linux (arm)

Linux (i386)

Linux (ppc)

Mac OS X (i386)

Mac OS X (ppc)

MorphOS (ppc)

WarpOS (m68k/ppc)

Windows (i386)

<comment><USER3> > IIRC it's using Pascal

It uses a superset of old-style Pascal called Object Pascal (the different is somewhat akin to C -> C++) which is actually a really nice language.

<comment><USER4> And contrary to C++ with C , you can use an objectless FreePascal syntax just fine :)

<comment><USER3> Indeed, I still miss writing desktop applications in Delphi 6, it absolutely nailed the sweet spot between RAD, good output, ease of use while not limiting your ability to get down and dirty, throw in the VCL and the insane number of aftermarket components and you have a developer experience I _still_ haven't seen matched (ironically not even by later versions of Delphi).

<comment><USER2> > "you have a developer experience I still haven't seen matched (ironically > not even by later versions of Delphi)."

Out of interest, have you tried C#? Delphi and C# share the same lead architect.

[https://en.wikipedia.org/wiki/Anders_Hejlsberg](https://en.wikipedia.org/wiki/Anders_Hejlsberg)

<comment><USER5> Was he? IIRC he was more like Borland CTO or something while Chuck Jazdzewski (also poached by Microsoft, now in Google I think) was the project leader. Anders did write TurboPascal by himself though.

Anyway, C# is not so close to Delphi. Both the language and the feel of the IDE are more similar to Java/Eclipse than to (good old times) Delphi.

I've used C# for several projects and, even using a decent machine, the two seconds delay (for best case) was there when doing mostly everything, while Old Delphi and current Lazarus snap.

<comment><USER2> > "Was he?"

Yes. Read the Wikipedia page, it clearly states he was the chief architect.

<comment><USER5> I _had_ read the Wikipedia page. But, you know, Wikipedia isn't always right.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> Does anyone know what a 4000T is worth these days? I've got the computer the local library used to use for their local access cable channel rotting away in my basement right now. I have no use for it but I'd like to make sure someone who wanted it got it rather than sending it off to some unknown fate.

<comment><USER7> If you have an old Amiga and if you haven't already, crack it open and remove the battery. The ones Commodore shipped them with are prone to leaking acid all over the PCB, destroying it [1].

[1] [http://members.iinet.net.au/~davem2/overclock/batt.html](http://members.iinet.net.au/~davem2/overclock/batt.html)

<comment><USER6> Thank you. I'll check that when I get home tonight.

<comment><USER8> Was it leaking?

<comment><USER6> fortunately not. thanks for the heads up though.

</comment></comment></comment></comment></comment><comment><USER9> Nice work! Lazarus is pretty nice but it's community is not large enough. It could be an excellent tool for cross platform and mobile, but the last time I tried mobile it was far from trivial to get anything working. It works, but it needs a lot of effort to make it easy.

</comment><comment><USER10> this is a question for those using freepascal, how would you compare it to modern languages like scala, go, rust

<comment><USER3> Free Pascal implements Object Pascal.

Not used it in a while but I was a Delphi programmer years ago.

Object Pascal is a decent language, it implements most of the OO features you'd expect in a 'modern' language.

It has very nice data type support via records, nice out the box string support, it supports properties with optional read/write specifiers (really useful). The usual stuff in terms of interfaces and generics.

It's unit system is clean, clear and unambiguous.

Moving away from the language it's compiler is very fast as is the output, it's generally in the same order of magnitude as C++ or Java ([https://benchmarksgame.alioth.debian.org/u64q/pascal.html](https://benchmarksgame.alioth.debian.org/u64q/pascal.html) the always unreliable in the realworld benchmarks).

<comment><USER10> another question please

i believe cross compilation (ability to compile to many platforms from one source code, from one dev machine and target many other platforms)

and the ability to easily mix assembly with code

are touted as some of freepascal/lazarus special features/edges, is this correct, or is this not very special or particularly powerfull in freepascal/lazarus

<comment><USER11> Especially powerful is the LCL (Lazarus component library) a GUI wrapper library which makes it possible to "write once compile everywhere" (Slogan of Lazarus). An in difference to QT or gtk and such toolskits it looks native on every platform because in the backend LCL can use GTK, GTK2, QT, Win-API or in this case MUI to create the GUI, so the application look not like aliens but native.</comment></comment></comment></comment>


Why IKEA Is Fed Up with Russia - <AUTHOR> http://www.businessweek.com/magazine/content/09_28/b4139033326721.htm <comment><USER2> There was an article in one of our national newspapers this weekend that shows how deep the corruption goes. A huge investment company, with 4 billion in assets, was unwilling to pay up and was driven out of business. Several government officials committed fraud to the extent of 290 million dollars (seizing taxes the company paid to the Russian government) and despite sending different parts of the government piles of evidence, no one did a thing.

One thing was clear from that article that should be clear to everyone here: Russia is not a good place to do business these days. Your competitors are the government are the criminals.

<comment><USER3> Well, you know why they still do business here? The answer is M O N E Y.

So, they bribe to make it happen, thus feeding the corruption loop, and don't see any problem with that! Until they do. Then, they brag the "ikea generation" crap in newspapers.

<comment><USER2> If you need to pay bribes, you need to raise your prices to still make a profit. Your customers, i.e. _you_ , need to pay more. Corruption hurts the population of a country, as every cent comes directly out of their pockets. That is partly why people in properly democratic countries have, _and keep_ , a higher standard of living.

<comment><USER4> It's much worse. The cost of bribes is bigger then the actual sum, and incomparable for the economy as a whole.

A bribe-based economy has very high barriers of entry, especially when the main client in your industry is the state. Which means low competition which means... lots of bad things.

<comment><USER5> _low competition which means... lots of bad things._

Example: Cell Phone service in the US. Actually, that's not the worst possible, but we are lagging the rest of the world.

<comment><USER6> Luckily you're still getting better service than us poor Canadians!

</comment></comment></comment></comment></comment></comment><comment><USER7> Problems like this seem to be endemic to Russia. Not only is corruption extremely common, but outside investors also have to worry about the government basically taking their shares and selling them to Russian companies, leaving them with nothing to show for the money they invested.

</comment><comment><USER8> The article makes the implicit claim that IKEA does a favor to Russians by selling them stuff and not Russians do by buying the stuff. I'm not saying the opposite just that this is not as obvious as the article makes it sound. It says that they invested x billions of dollars. Obviously they are planning to make a profit, so on the net money will leave the country due to their presence. If I understand correctly they want to open retail stores not manufacturing plants. Did I miss some finer point ?

<comment><USER9> In theory, trade only happens when it benefits both parties. I might hate the local Exxon selling soda for 2$ a bottle, but I can still buy it at other stores. The only reason you complain is they are charging you for the amount of effort they save you and not their costs.

So, opening a store is a net gain, as is investing 4 billion in the economy. _In theory._

<comment><USER8> Of course state protectionism might help local furniture manufacturers to catch up and grow their own business and that might actually benefit the Russian economy even more. Perhaps the legal, administrative burdens are there with a purpose, or maybe I'm reading too much into it...

<comment><USER10> Protectionism is bad. It doesn't benefit an economy. It can benefit the protected industries short term as well as the people they bribe to get the protection. But overall it is bad.

See <http://en.wikipedia.org/wiki/Comparative_advantage> for instance.

</comment></comment></comment></comment><comment><USER11> I'd just like to take the time (and the modding down this comment will probably get) to thank HN, simply because this article has been posted for more than 4 hours and nobody has yet made an "in soviet russia" joke.

Thank you all for the continuing maturity.

<comment><USER12> In Hacker News, Soviet Russia thanks YOU!

</comment></comment><comment><USER3> Ну и пусть пиздуют со своим китайским барахлом ломающимся.

Seriously: you want to have a business in the country, a profitable and fast- growing one, yet you have complaints about the process. I guess, either shove it or leave.

In Moscow, there was an accident when an aquapark full of people collapsed due to bad engineering and construction, too. So, maybe those delays aren't just corruption? Also: In South Korea, there's a history of mall collapsing under its weight due to poor engineering and exploitation;

The bottom line is: If it would be corruption alone, they'd bribe and move on; they're huge. So, it's not just corruption. And as of stopping investments, maybe they're just out of money in their Sweden?

"The retailer has become such an icon of Russia's boom that today's yuppies are called "the Ikea Generation."" This is crap, never heard anything remotely like that. Perhaps stop making things up?

<comment><USER13> Why does one have to accept the practise of corruption, to have a profitable and fast-growing business, as you seem to suggest?

With your reasoning, we could put forward that maybe the Moscow accident was caused by corruption: the builders paid off the inspectors to save on building costs.

The bottom line is: Ikea and Ingvar Kamprad has stated several times that they will not accept the Russian business practise of corruption. This is one of the reasons why some of Ikea's new locations have stood unopened for years, while waiting for permits from local governments (read: while refusing to pay bribes).

Может тебе сам перестать придумывать вещи, и посмотреть в зеркало?

<comment><USER3> Well, you can either accept "practice of corruption" or circumnavigate around in some way, or not have a business.

About the Moscow accident; I'm sure it was, partly. But I don't see how is this fact going to help if their mall in Samara has safety problems, indeed. If it doesn't, as I've told, they have their three choices.

In short: I DO think there's a problem with corruption in Russia; I just DON'T see a problem with IKEA packing its bags and leaving.

<comment><USER14> You might like IKEA, or not.

There is an easy argument to make that they are a net destroyer of taste and destroy culture. I am not certain, personally.

But as a business, IKEA is as serious as a heart attack and is a competitor that seems unbeatable; an inspiration for all.

IKEA builds and manage an incredible amount of stores everywhere -- without any serious security problem. I've never read any article that IKEA complain about bribes in other countries.

Be grateful that the company risks billions of dollars by becoming unpopular among violent criminals like Russian politicians. It is bettering your country; economists claims that corruption destroys a country.

You don't help your suffering country by defending your politician-thieves, which even makes the politicians of my home country seem mild.

(Sorry for wasting space by beating a dead horse.)

<comment><USER3> I don't think it would have any noticeable consequences for anyone except IKEA itself.

<comment><USER15> I think it will have noticable consequences when IKEA has to go, because this is not an isolated case. What kind of a signal does that send to other investors?

</comment></comment></comment></comment></comment></comment><comment><USER16> Russia is Fed Up with IKEA.

</comment><comment><USER17> It is an interesting article, but why is it posted on HN?

<comment><USER18> Might it be because it's an interesting article?

<comment><USER17> I am new here, was just curious.... Thanks</comment></comment></comment>


Show HN: Polished – A lightweight toolset for writing styles in JavaScript - <AUTHOR> https://github.com/styled-components/polished <comment><USER2> This tool seems useful if you buy into the philosophy, but I'm just not sold yet - component based styling leads to a lot of style duplication and makes it very easy for a developer to go "off the playbook" when it comes to enforcing a consistent styleguide throughout an app.

The idea that "globals" in CSS are bad is counter intuitive to my experience that globals in CSS encourage consistency

Maybe when you're facebook size and you have many product teams all expected to produce something that all works together - I can see how the global namespace would be impossible to manage. For your average website or app? Not even close. It'll be awhile before you run into the limitations of CSS that Facebook is running into.

<comment><USER3> >This tool seems useful if you buy into the philosophy, but I'm just not sold yet - component based styling leads to a lot of style duplication and makes it very easy for a developer to go "off the playbook" when it comes to enforcing a consistent styleguide throughout an app.

You just handle it the same way you handle any shared code. You can keep files in a file scope, in a package / folder scope, or in the top-level global scope (in a small app that's totally fine). But removing globals-by-default removes a lot of "gotcha's" from working with CSS.

<comment><USER4> What are these gotchas if I may ask? Have you got experience with BEM?

<comment><USER5> Uhm.. Having to use BEM is a gotcha.

Why don't you write all your applications code in a global scope and just use a BEM-like naming scheme for your functions?

</comment></comment></comment></comment><comment><USER6> I'm not 100% what this is exactly... Care to clear it up a bit?

At first I though this is for those situations where you find yourself urged to modify the css in your javascript. But looking at the documentation, this seems to be a way to write the complete CSS in JS, and then to have it compiled into CSS. Do I understand that wrong? If not: Why would one want that?

<comment><AUTHOR> Yes, this is kinda like the "lodash" for writing styles in JavaScript.

The main goal with writing styles in JavaScript is to make CSS work in the context of component-based systems. The language is magnificent, but it was made in an age where the web consisted of documents.

These days we're building rich, interactive, client-side user interfaces with the same language, but it's standing in our way. That's why there has been a lot of exploration, especially in the React ecosystem, around putting styles in JavaScript.

I'd encourage you to take a look at these magnificent resources which I cannot do justice in a single comment:

\- The talk that kicked it all off: "CSS in JS" by vjeux[0] (made React Native, works at Facebook)

\- "Rendering Khan Academys Learn Menu Whereever I Please" [1]

\- "Scale FUD and style components" [2]

and a bunch of other talks and articles if you google "CSS in JS".

[0]: [https://speakerdeck.com/vjeux/react-css-in- js](https://speakerdeck.com/vjeux/react-css-in-js) [1]: [https://medium.com/@jdan/rendering-khan-academys-learn- menu-...](https://medium.com/@jdan/rendering-khan-academys-learn-menu- wherever-i-please-4b58d4a9432d#.w9nshye05) [2]: [https://medium.learnreact.com/scale-fud-and-style- components...](https://medium.learnreact.com/scale-fud-and-style- components-c0ce87ec9772#.kzjba8lcg)

<comment><USER6> The idea of writing CSS in JS is horrible to me. But I'm coming from a completely different developer camp, and find the vjeux talk completely unconvincing, so that does not mean much :) And with your comment it is clearer now where this might be useful.

Maybe add a "How to use this" section describing possible workflows to the Readme?

Also I run into situations where my js produces inline css, and a lodash style lib for that could be useful. Thanks for the answer, congratz for launching!

<comment><AUTHOR> Thanks for the kind words, totally understand that this isn't for everybody.

Definitely will work on improving the README, just needed to finally get this out of the door ;)

Cheers!

</comment></comment></comment></comment><comment><USER7> The current state of the JS world is getting closer every day to the J2EE craziness about 10 years ago. As an outsider it was nearly impossible to understand for what all those frameworks with funky names were required at all. For an insider every of those new frameworks looked like the solution to a fundamental CS problem. However, those fundamental CS problems where nothing else then some shortcomings introduced by the latest framework before.

<comment><USER8> The J2EE comparison is an interesting one.

I remember attending NodeJS meetups in the local Engine Yard office buildings around 2012 before there was an extant local NodeJS community, so most of the attendees were coming from non-JS programming backgrounds. There was the odd Ruby and PHP dev, but the vast majority of the initial local NodeJS community here were Java people for some odd reason. I didn't really know much about the Java community, but my general impression of the Java-backgrounded presenters demoing NodeJS apps they'd cobbled together with libraries they didn't care to understand the internals of didn't give me good impressions.

I've never noticed any other strong connections between Java & JS communities online or elsewhere, this was a just general one-off (but strong) impression from local meetups.

</comment></comment><comment><USER9> Wouldn't these two lines of code do the same thing?

      var addCSS = (css) => { window.document.styleSheets[0].insertRule(css, window.document.styleSheets[0].cssRules.length); };
      addCSS('.x { color: red; width: 5px; }');

Test examples (+ another version that can add multiple selectors in the same line): [https://jsfiddle.net/xkLnj9st/](https://jsfiddle.net/xkLnj9st/)

</comment><comment><USER10> Perhaps Show HN would be more appropriate than "just launched"?

<comment><AUTHOR> Good call, will update!

<comment><AUTHOR> Updated, thanks!

</comment></comment></comment><comment><USER11> Can somebody explain how this approach affects the style caching by the browser? It seems that this will just throw away all the caching optimizations built around that.

<comment><USER12> It is replaced by script caching. Loading the styles from JS rather than CSS is a bit slower, but not much.

<comment><USER11> I mean more like the AST behind parsing/rendering the styling rules, not caching the downloaded file.

<comment><USER12> I didn't know it was a thing... Some CSS-in-JS libs support isomorphic apps, but I don't know how well they take advantage of the caching abilities of browsers.

</comment></comment></comment></comment><comment><USER13> I'm a massive CSS-in-JS skeptic but this is a very nicely thought out low- level tool for that stack.

It's basically a JS version of SASS mixins (kinda).

Most of my objections to CSS-in-JS are they are all poorly architected high- level abstractions taking a bad solution to a lower level problem.

This feels like a good basis for a higher level tool that doesn't suck.

And like I said - I say that as someone broadly skeptical of the whole topic.

</comment><comment><USER14> Mods: consider linking to the project homepage, [https://polished.js.org/](https://polished.js.org/) which appears to give much more context

<comment> nik-graf Thanks for the hint. We forgot about it and I just added it.

</comment></comment><comment><USER15> I'm coming around slowly but I still have a hard time with css being embedded in JS components. I have used SCSS for so long I am used to style and function being separate concerns and separate files. I like the idea of being able to use 'mixins' for js components.

</comment><comment><USER16> Also interesting, for people who fear style duplication: [http://styletron.js.org](http://styletron.js.org)

<comment><USER12> Automatic atomification of styles meshes badly with conditional at-rules. You can end up with conditional rules that are ignored.

</comment></comment><comment><USER17> I found that the killer application for Javascript would be to write github repos for Javascript wrappers for typescript. Seriously, why is CSS as Javascript objects a thing? Are we so bored with the stack we've been using that we can only make things interesting by cross compiling everything? It makes me think of this video: [https://www.destroyallsoftware.com/talks/the- birth-and-death...](https://www.destroyallsoftware.com/talks/the-birth-and- death-of-javascript)

<comment><AUTHOR> That's exactly why we made styled-components![0]

I really dislike writing styles as JavaScript objects, so styled-components let's you write actual CSS in JavaScript. We have also added support for a bunch of editors, so you don't miss out on syntax highlighting just because of that.

I'd encourage you to check it out!

[0]: [https://www.styled-components.com](https://www.styled-components.com)

<comment><USER12> I just discovered [http://typestyle.io/](http://typestyle.io/) which should make it much easier to write CSS in JS... Auto-completion everywhere...

I'll probably steal the approach for my own CSS-in-JS lib (j2c).

<comment><USER18> +1 for typestyle. My team and I have been using it for the past few weeks in trying to clean up a rather monolithic css project, and it's been really cool to work with.

</comment></comment></comment></comment><comment><USER19> i'd like a relative positioning framework for css, to clamp anchors point relative to each other. that stuff is HARD in CSS

</comment><comment><USER20> No.

<comment><USER21> We've asked you already to please stop posting unsubstantive comments. We have to ban accounts that won't.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment></comment>


GNU/Linux Decapitated Leadership - <AUTHOR> http://techrights.org/2019/09/19/gnu-linux-decapitated-leadership/ <comment><USER2> Wow, this is such an angrily indignant article.

It borders on zealous idolatry frankly.</comment>


The Brilliance of a Stradivari Violin Might Rest Within Its Wood - <AUTHOR> http://www.nytimes.com/2016/12/20/science/stradivari-violin-wood.html?module=WatchingPortal&region=c-column-middle-span-region&pgType=Homepage&action=click&mediaId=thumb_square&state=standard&contentPlacement=1&version=internal&contentCollection=www.nytimes.com&contentId=http%3A%2F%2Fwww.nytimes.com%2F2016%2F12%2F20%2Fscience%2Fstradivari-violin-wood.html&eventName=Watching-article-click <comment><USER2> Does anyone know if the researchers have made an effort to quantify the acoustics they are trying to recreate or explain?

The NYTimes article summarizes it this way: "For hundreds of years, the best violin players have almost unanimously said they prefer a Stradivari or a Guarneri instrument... Why nobody has been able to replicate that sound remains one of the most enduring mysteries of instrument building.

Here's the thing, is there actually a notably different sound? I have read the study that shows professional musicians don't necessarily prefer the sound of a stradivarius over a high quality new instrument, that doesn't necessarily mean they don't sound different. How good are they at telling the difference between these instruments, is it something a non-musician could notice or be trained to notice relatively easily.

Ideally, a researcher would be able to quantify the tone that is elusive. Alternatively, a team of listeners who can clearly distinguish between the two, reliable, would be useful. Because it sounds like the goal here isn't so much to get a really nice sound, it's to figure out why these instruments sound _different_ (if indeed they do!)

I read the abstract, and it sounds like they've analyzed the composition of the violins and have found some notable chemical differences in the wood. It's not an uninteresting result, but I still have to wonder if we're a few steps ahead of ourselves here. First things first, do Stradivarius instruments, as a group, have an identifiably different tone or acoustic quality that makes it possible, either through acoustic measurements or trained human evaluation, to reliably classify them apart from other instruments.

<comment><USER3> My wife is a professional violinist. (In Australia at least) if you've watched the news or a recent Australia movie, you would have heard her play.

She says you can ALWAYS tell the difference. But she also says, "better" depends on the music. If you are playing a song on X-Factor or Australian Idol or even Christmas carols, then you'll never notice. If you are playing a solo for a classical piece (wedding or other ceremony), then it certainly sounds "different".

Better is debatable, but different, yes

<comment><USER4> Eh, I'm going to question her ability to identify the difference between a Strad and non-Strad based on this double blind study[1]. There's a lot of fetishism in the community on the Strad, probably to the joy of Christie's auctioneers worldwide. "The old growth trees in the region can't be sourced anymore". "no, it's the varnish. Your resonance is affected by both the chemical composition of the mix as well as the way it aged with the wood".

I'd imagine if 5 of the best sawyers with 5 of the best luthiers and sound engineers in the world all sat down together with the goal of replicating the Strad's sound with 100% accuracy I'm confident the 'unique' sound of the Strad could be replicated. It might take a lot of time and maybe a few hundred k in equipment (a dozen condenser mics placed strategically at a variety of places within the room and near the instrument itself, some vibration analysis equipment on the equipment, etc), but eventually the sawyer will choose the right wood, the engineer would perform acoustic analysis and tell the luthier "ok, that 43 micron chisel shave you just took just did __, 22 more and we match the F# perfectly on the G string".

I think it's very similar to the whole audiophile thing, where at least some of it is placebo. Those $30 monster cables aren't transmitting with any more signal fidelity than your $5 ones (assuming equal gauge copper, proper ohmic termination, blah blah), and I can sit down and prove it to anyone with $400 worth of spec-ans from the 1980s.

Now the "different" vs "better" \-- I love my record player but when audiophiles say 'it sounds better' than the raw mix-down digital masters, in terms of the amount of audible audio content objectively this isn't the case. (Edit: See [4]) It sounds different from what you're used to. You like the 'warmth' that a belt drive record through a 1950s speaker produces. You like the hisses and crackles and pops. It's an emotional connection you have. When I was playing guitar with my crappy band, I'd run my digital content through a Tascam quarter inch tape deck just to get that hiss in the tracks before we sent it down for mastering (we didn't have those fancy plug-ins to do it for us then).

The same thing happened with film.[2] TV is generally shot at 30fps, film at 24fps[3]. When the FPS rate increased with the advent of more modern technology and higher sampling rates, people would claim that cinema didn't look 'cinematic'. The motion blur of the analog film experience we grew up with (well, those of us over 25) is something we mentally associated with the experience of going to the cinema. You saw a bunch of people comment on this with the Hobbit being distributed and shown at theatres at 48 FPS. "It just doesn't look _right_ ".

\--

[1][http://www.thestrad.com/blind-tested-soloists-unable-to- tell...](http://www.thestrad.com/blind-tested-soloists-unable-to-tell- stradivarius-violins-from-modern-instruments/)

[2] I'm sorry I don't have a source on this study, but the phenomenon was pretty widespread. Cinema isn't something I've delved too far into but the cinematographer forums have thousands (literally) of threads on FPS discussion.

[3] That's just historically how things broke down -- 24 was a convenient number to match up with actual seconds due to it's easy factorability, so you could get half a second at 12 frames, a quarter at 6, etc. This made it easy back in the day when post-processing involved actually involving cutting nitrate-based film and sound syncing to the video involved physically matching the snap of the clapper on your audio track to the visual of the actual frame of when the hinge closed.

RE: 30 fps, I'm not sure, but I'd guess it had to do with the fact that we're at 60 hertz in the US so you could interlace half a frame a cycle (ie. trigger on the peak of every AC cycle to update the set of horizontal lines modulo two, so the electron gun presumably only had to hit half the lines within that time constraint) Other parts of the world operate at 50hz, which is why I'd imagine you have the PAL standard and 25 fps in those locales. (Pure speculation though, someone who's knows for sure, jump in.)

[4] Operating under the assumption that that they were pressed from the same master source.. I'm limited only to the records I bought which were from bands with too small of a budget to afford two separate masters. (I.e., That mid-90s emo 200 run EP by Knapsack didn't have two masters, hell on tour they were lucky to have a floor to crash on.) Still, poster beneath me makes a very valid point that should be taken into consideration (Though I'm sure you're already aware of whether or not the band had a separate master DAT/master plate made if you like the band enough to care about the nuanced differences between two masters.)

<comment><USER5> The study in [1] has a sample size of 10 in Paris, in one setting. I'd hardly call that conclusive or ruling out all the possible confounding variables.

<comment><USER6> Also known as "I am convinced this false thing is true, and will selectively demand higher levels of rigor from anything opposing my view than I ever have from anything supporting my view".

I've read quite a bit about the blind violin studies, and don't see a way to dismiss it -- people were claiming instantly recognizable, impossible-to-miss massive differences in quality for the older violins. Yet nobody has been able to back up those claims with results; all results so far indicate that when the age and maker are obscured, identification by sound alone is no better than chance.

<comment><USER5> Personally, I do tend to think the difference is much harder to distinguish than tradition would dictate. These studies are evidence in that direction, in fact. But simply sampling 10 people is about as good as 10 anecdotes.

> Also known as ...

Please. What I've just written makes the rest of that sentence silly. There is no need to jump to conclusions.

<comment><USER7> I agree with your point, and to make it worse some of those 10 people were from a previous, discredited study by the same authors.

Funny enough two comments I made - on this thread, now dead - went from +2 to -4 very quickly. Another comment went from +5 to +2.

I've got a pretty strong feeling that people love telling this anecdote about "science over art!" and ironically don't like it when it turns out the science is actually bad science. As a result, they're banding together and simply mass-downvoting things.

There's an interesting debate to be had here, on the merits of the sounds of different instruments, and the linked NYT article is fascinating. Unfortunately, people seem to be caught up in a frenzy of linking bad science to each other instead of actually discussing violins, which are a personal passion of mine.

I went into more detail on the bad science in my other comment here, which is going negative now: [https://news.ycombinator.com/item?id=13233977](https://news.ycombinator.com/item?id=13233977)

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> FWIW, it seems like even professionals cannot distinguish between a Stradivari and a new violin... and may even prefer the latter.

"When the researchers totaled up the results, there was no evidence the players could reliably pick old from new. And when players were asked to pick their favorite instrument, the winner was a modern, freshly made violin."

[http://www.npr.org/sections/money/2014/05/16/313099219/is-a-...](http://www.npr.org/sections/money/2014/05/16/313099219/is- a-stradivarius-just-a-violin)

<comment><USER9> Reminds me of those audiophile A/B/X tests that always end up in a tie between whatever equipment.

</comment></comment><comment><USER10> Stradivarius was ahead of his time, but all of his violins have been updated and modified since they were built, such as adding Bass Bars [1].

Since then, his results have been duplicated and/or improved. The name Stradivarius still carries an amazing amount of weight. Researchers have shown musicians can't actually differentiate between newly built violins and Stradivarius:

"The duo asked professional violinists to play new violins, and old ones by Stradivari and Guarneri. They couldn't tell the difference between the two groups. One of the new violins even emerged as the most commonly preferred instrument." [ 2 ]

Therefore when TFA from NYT makes this vague, unsubstantiated claim "For hundreds of years, the best violin players have almost unanimously said they prefer a Stradivari or a Guarneri instrument," take it with a grain of salt or preferably evidence that mainstream media benefits by perpetuating mysterious illusions for the emotional allure.

[ 1 ] [https://en.wikipedia.org/wiki/Bass_bar](https://en.wikipedia.org/wiki/Bass_bar)

[ 2 ] [http://blogs.discovermagazine.com/notrocketscience/2012/01/0...](http://blogs.discovermagazine.com/notrocketscience/2012/01/02/violinists- cant-tell-the-difference-between-stradivarius-violins-and-new-ones/)

<comment><USER11> I can't even imagine the amount of fear I'd feel if someone asked me to make some modifications to an antique violin worth millions of dollars. It'd be like deploying an update on a Friday afternoon.

<comment><USER7> Hah, I can't compare to that, but I do some minor violin-fixing stuff as a hobby. Recently I spent a decent amount of time repairing a 100 year old German violin, and (at first) it's exactly like you describe: you feel like you're going to destroy everything. Like you're playing football with a Prince Rupert's Drop. But then you get into a bit of a pattern with the instrument, and you start to feel more confident... which funny enough isn't a good thing, cause that's when you screw up.

Make no mistake, I love it though, and the finished product is absolutely gorgeous.

<comment><USER12> I've repaired a few violins, none of them expensive or valuable. One of them I had gotten at Goodwill for $20 or so with a couple cracks in the top.

Popping the top off of the violin was a little nerve-wracking, but that cracking-hide-glue sound is also satisfying. It went back together nicely (I even used the opportunity to glue a piezo-film transducer to the inside of the soundboard).

Now I don't feel quite so much like the violin I'm holding is going to shatter into a million pieces if I twist too hard on a tuning peg.

</comment></comment></comment></comment><comment><USER13> Blind tests suggest that most of the brilliance today comes from the brain knowing it's a Strad, because great modern violins sound just as good or better.

(The other brilliance was being 200 years or more ahead of everyone else at the time!)

<comment><USER14> These blind tests, again and again, conclusively prove that those listening to the music cannot tell a Yamaha from a Strad. They'll describe the Yamaha in glowing terms until they realize it's a violin made last year, then immediately shit all over it.

It's like wine people who are easily duped by a fancy looking bottle. A true sommelier can identify different wines by taste alone, but for every one of those there's a dozen frauds who pretend they know what they're doing, just parroting stuff they've memorized.

The other troubling thing is the gender of performers is very hard to discern from a blind performance, but when the performer is visible the judges skew very heavily towards men. It's absurd. [https://www.theguardian.com/women-in- leadership/2013/oct/14/...](https://www.theguardian.com/women-in- leadership/2013/oct/14/blind-auditions-orchestras-gender-bias)

<comment><USER15> Listening is different from playing. Or perhaps more precisely, the experience of passively listening is different from the experience of actively listening to the instrument you're creating music on.

As a guitarist, I do a lot of experimentation with picks. I can easily tell the difference between different kinds of picks by sound _when I 'm playing_. But I can listen to old recordings of myself where I couldn't even tell you which guitar I played! Interestingly, a drummer I play with regularly can usually tell when I've switched picks, and has opinions about what picks I should be using. Such is the closeness of musicians working together.

Any of these A/B blind test experiments strongly need to be live. A recording isn't a measure of a violin... it's a measure of the violin, the microphone, the mixing board, the mastering process, the amplifier, and the speaker.

<comment><USER16> The tests are live. The researchers have really bent over backwards to create fair tests, I think. Someone else in this thread linked to a good summary: [http://www.thestrad.com/blind-tested-soloists-unable-to- tell...](http://www.thestrad.com/blind-tested-soloists-unable-to-tell- stradivarius-violins-from-modern-instruments/)

<comment><USER17> In case you read this thread without clicking the link: astrodust's comment might lead you to believe that professional violinists can't tell the difference between factory-made Yamaha instruments and a Strad.

The instruments in this test are _not_ factory-made Yamahas. They're hand- crafted instruments made by top masters. In other words, the best instruments now are finally catching up to the best instruments of a few hundred years ago.

As for casual listeners, I'd believe that some of them can't tell the difference between a Yamaha and a Strad. But professional violinists absolutely can--both when playing and listening.

<comment><USER14> Blind tests seem to disagree. New but very high quality instruments vs. those considered exceptional and unmatched.

</comment></comment></comment></comment></comment></comment><comment><USER18> Since everyone's talking about the double-blind study again and as one of the (probably) few people on HN who's seriously played a Strad, I feel obligated to link to my previous comment on the matter:

[https://news.ycombinator.com/item?id=12095164](https://news.ycombinator.com/item?id=12095164)

TL;DR—fine antique violins seems to have a wider range of good tone colors available than modern instruments, but these tone colors take significant practice with the instrument (months, not minutes) to discover.

</comment><comment><USER19> As many have pointed out the entire premise is flawed, with double blind testing showing no objective advantage in the first place (inspirational value withstanding).

Then another study found competitions are biased as well, with judges rating people differently based on physical appearance and the amount of body english they use while playing.

</comment><comment><USER20> We already know where the brilliance of a Stradivarius rests: in the listener's imagination.

[http://www.thestrad.com/blind-tested-soloists-unable-to- tell...](http://www.thestrad.com/blind-tested-soloists-unable-to-tell- stradivarius-violins-from-modern-instruments/)

</comment><comment><USER21> My grandfather made violins as a hobby.

He would wear 20 year old pants, never _ever_ eat out, grew most of his veggies in a garden.

He would think nothing of spending $100's on a tiny piece of wood from god knows where.

<comment><USER22> Hahaha! My father makes violins as a profession. He also thinks nothing of spending hundreds on small pieces of wood from strange places. He recently flew to Lithuania and gave some strangers several tens of thousands of dollars for a few piles of wood. My dad does eat out and buy new pants every now and then, though. :P

</comment></comment><comment><USER23> I thought at least part of this was already known.

The story as I've heard it is that there was a rather dry period preceding Stadivari's violin making, which led to particularly dry and hard wood, both good things for a violin.

</comment><comment><USER24> The primary reason professionals prefer Stradivaris is that it increases their profile and not because they sound better. Time and time again blind studies show that professionals can't tell the difference or even prefer the modern instruments. But when your resume states that you own a Stradivarius, you will be more highly regarded.

</comment><comment><USER25> Most people can't discern between a violin and a viola, or an alto and tenor saxophone. The percentage of people who have the refined ears to detect differences between a Strad and other great violins must be unbelievably small.

<comment><USER26> Sure, but the population of people who are involved in the industry where this matters is a much more interesting population.

The population of people that can recognize good sql vs great sql is tiny as well...

</comment></comment><comment><USER27> The brilliance of the stradivary is aging over centuries on a base of very good craftmanship. Why does the old stuff taste better than the new? Because it has aged well on a good base.

That means today we can build much more excellent violins with machines, but music is traditional, thus prefers the hand made things first. New machine made violin can never sing as beautiful as old mystery thing of ancient music rituals.

<comment><USER27> Yes, and in the actual a/b tests nobody could single out the stradivari with any significance. The human performer turned out to be the most deciding factor by several magnitudes.</comment></comment>


Ask HN: How do I handle a $Ms windfall for the short term? - <AUTHOR> I'm coming into a low $Ms windfall from a personal investment and am looking for advice on how to handle the receipt and management of these funds for the short term.
This is the first time I've ever come into this kind of money, and want to take ~6 months to cool down and shore up my financial intelligence before making any moves. I'm deathly afraid of fucking up, and losing it all.
How do I handle the wiring process — send it all to one account? And how do I hold this money safely for the short term — multiple high-yield savings accounts, treasuries, money market, etc?
Any advice and stories of your own experiences would be greatly appreciated. <comment><USER2> Here are places to start:

* the r/FatFIRE subreddit - many people have asked variants of the same question: [https://www.reddit.com/r/fatFIRE/comments/hf99ez/large_inher...](https://www.reddit.com/r/fatFIRE/comments/hf99ez/large_inheritance_several_countries_zero_clue/) . The r/personalfinance "windfall" page comes up occasionally: [https://www.reddit.com/r/personalfinance/wiki/windfall/](https://www.reddit.com/r/personalfinance/wiki/windfall/) (it links to lots more similar questions).

* Past HN submission: [https://news.ycombinator.com/item?id=18600220](https://news.ycombinator.com/item?id=18600220)

* If you don't have any experience at all, you may want to start with an hourly financial planner who is also a fiduciary: [https://www.napfa.org/find-an-advisor?q=&exp=Fee+Structure%3...](https://www.napfa.org/find-an-advisor?q=&exp=Fee+Structure%3AHourly#) (note: the "Hourly" filter is checked), [https://www.napfa.org/financial-planning/fiduciary-101](https://www.napfa.org/financial-planning/fiduciary-101), [https://www.forbes.com/sites/baldwin/2019/10/13/hourly-plann...](https://www.forbes.com/sites/baldwin/2019/10/13/hourly-planners-directory/). They'll help you answer these questions and charge an hourly fee, much like an attorney would.

(The best-insured place to park it would be a bank/brokerage with multi-bank sweep account, like Fidelity's FDIC-Insured Sweep: [https://accountopening.fidelity.com/ftgw/aong/aongapp/fdicBa...](https://accountopening.fidelity.com/ftgw/aong/aongapp/fdicBankList). However, talk with a professional first.)

<comment><AUTHOR> Thanks. I've been digging into both those subreddits quite extensively for a couple weeks. Tons of great info, but nothing I've found that walks me through the uber elementary and practical steps of receiving and holding that money for the short term. Like when I'm asked for wire instructions, where do I have them send the money?

I'll see if I can get some time with a financial planner, but would love to learn how others here have handled it, and if there are any "best practices."

<comment><USER2> Sure. Sign up for [https://www.fidelity.com/cash-management/faqs-cash- managemen...](https://www.fidelity.com/cash-management/faqs-cash-management- account) and Fidelity will give you a routing and bank account number. As long as you choose Fidelity FDIC-Insured Sweep as your sweep (uninvested cash) account, it'll be there until you decide what to do with it.

<comment><AUTHOR> Yeah, some preliminary research on Insured Sweep after your first comment suggests this may be a good way to go. Much appreciated.

Any quick thoughts on parking it in a TIPS ETF?

<comment><USER2> It shouldn't be there long enough for yield to matter, so I don't know why one would take on that complexity. Step 1, put it somewhere absolutely safe and fairly simple. Step 2, talk to someone and decide what to do with it longer term (which probably won't be bank deposit or TIPS).

In step 1, the goal isn't to keep pace with inflation because, for the few months required to do step 2, inflation doesn't matter.

(My meta-comment is: spend the time you'd spend reading r/FatFIRE or asking HN on finding and talking with a planner instead. I assumed you just found out because, if it's already been a few weeks, there's no reason to still have this question. I don't mean to offend you, but: a few hours with a professional who knows your specific situation will be more helpful than anything you'll find online.)

</comment></comment></comment></comment></comment><comment><USER3> Do not trust anyone. Including your relationships and spouse.

Make three lists of items - things you will want for yourself rest of the life, things you need to live, and things you want to invest for the time after you. Examples for each list: a good house in a good place, a set of low risk investments that will give you 250k p.a. perpetually, invest in a durable enterprise that will outlast you.

Then go about living as if nothing had happened.

When it comes to investment, choose boring non-exclusivist models. Aka. avoid maddoxes.

<comment><AUTHOR> Thanks, appreciate the advice. I've got initial allocations outlined for things like debt, expenses, runway, etc, most of which are straightforward. The biggest and riskiest allocation is for "investment" and the one I'm looking for advice on where to store for the time being until I'm ready emotionally and analytically.

<comment><USER4> I'm very happy with my investment advisor at Edward Jones. He is based in San Francisco. Ping me if you want his contact info.</comment></comment></comment>


Thermal Stabilization of Viral Vaccines in Low-Cost Sugar Films - <AUTHOR> https://www.nature.com/articles/s41598-019-44020-w <comment><AUTHOR> Summary: two vaccines that until now required a cold chain from production to administration were coated with a thin film of a mix of two sugars and they retained their efficacy for at least 2 months of storage at 40 °C.</comment>


Your Idea Is Worth Nothing: A Rant, Sparked By The Snapchat Lawsuit - <AUTHOR> http://forbes.com/sites/jjcolao/2013/04/03/your-idea-is-worth-nothing-a-rant-sparked-by-the-snapchat-lawsuit/

<comment><USER2> Regardless of one's stance on the well-hashed out debate of whether ideas are worth nothing, the guy suing was one of the three co-founders with equity. To kick him out like that without proper recompense is unjust and malicious. To me, the two other founders' characters are suspect and they shouldn't be trusted.</comment>


Ask HN: Accelerate learning of white-hat hacking - <AUTHOR> Are there any bootcamps that quickly teach you the basics you need to know to say develop exploits, and hack systems?<p>Thanks in advance <comment><USER2> Take a look at White Hat Academy, [https://ex.whitehat.academy](https://ex.whitehat.academy) \- we have some interactive labs on using Metasploit, web app security and some other intro topics that might help you out. We'll be building full course tracks soon as well, so appreciate any feedback on the content you'd like to see next!</comment>


Ask HN: Who are the most controversial (yet still popular) HNers? - <AUTHOR> Popular == karmic, on here. So controversial is, you have a high ratio of
spectacularly downvoted comments, but you're still popular, in other words, you still have a high amount of karma. Someone more experienced in statistics than I am at the moment can come up with a good metric for calculating "most controversial (yet still popular)".
I find this interesting because I know that karma causes me, anyway, to be cautious in the opinions I voice, since the downvotes are painful to me. I am interested to see people who are brave enough to not give a s%%t about getting downvoted but are still popular overall.
I'm interested in diversity of opinions, not echo chambers, and people who can combine having their own unique point of view that doesn't follow the crowd, as well as still pleasing the crowd a lot of the time are very interesting to me right now. <comment><USER2> I disagree with many things that tptacek has to say, but I rarely downvote him. Indeed his remarks seem to be a source of much debate and I find that commendable. In my view, downvoting should not be used to indicate disagreement, but to maintain the relatively high signal to noise ratio this forum enjoys. I reserve downvotes for ambit claims that are patently false, personal abuse, offensive language, wilfully begging the question, excessively sloppy or lazy reasoning, pretending to expertise, or simply being a pig- headed asshole about something. Having myself been guilty of these things from time to time, particular this latter, I feel comfortable suggesting that the majority of this community's members appear to apply a similar standard.

<comment><USER3> I quite like your guidelines on what to upvote or downvote.

I'll try it as well.

In fact, I wish there was a voting etiquette described here: [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

Nothing too formal, but just a "here's how the community like to use voting tool"

<comment><USER2> My upvoting is much looser. I will upvote as a mark of agreement, or if I liked someone's framing of their point, for a nice story, for alliteration and wordplay, or if they mention someone or something I'm fond of, or indeed almost any other positive response from my limbic system.

Guidelines are a potential bikeshed. I don't think it's a terrible idea, but be careful what you wish for.

</comment></comment></comment><comment><USER4> > I'm interested in diversity of opinions, not echo chambers, and people who > can combine having their own unique point of view that doesn't follow the > crowd, as well as still pleasing the crowd a lot of the time are very > interesting to me right now.

I disagree. It's an overused defence: voicing idiotic opinions is "having a unique point of view"; being rude and domineering is "having an outspoken and blunt demeanour". Your opinions should stand on facts, not your I-don't-give- a-shit attitude. The difference should come from your interpretation of them. Respecting so-called controversial figures leads only to a downward spiral where we encourage bad behaviour.

Hacker news, in my experience, respects different opinions if they carry any weight. A thread on Uber has both who attack and defend Travis Kalanick. Controversial opinions, unfortunately, often means saying groundless shit and later, defending them with "I-am-a-contrarian" attitude.

<comment><USER5> Only problem with relying on "truth", at least when it comes to Science, studies often can't be reliably reproduced, former editors of prestigious medical journals say half of what they publish is pure rubbish, the NEJM gave up trying to hire independent reviewers of their papers in 1991 because they couldn't find any scientists who weren't tainted by pharma funding. I'm all for rigorous science, it's just that we have too many practitioners these days motivated by money rather than the pursuit of unbiased truth, and in their process, pervert science into nothing more than public relations.

You need look no further than the largest study of bee populations published this week in Nature to see what I'm talking about. It concludes Roundup is killing the bees, and Bayer comes out and calls the study "inconclusive" because it defies the tobacco science they previously bought and paid for.

And I just know someone is going to post a link from Snopes, confirming Bayer's version of the truth, without investigating any of the underlying science, but will accept Snopes' version of the truth as the actual truth. Because Snopes. Let's not even acknowledge nobody at Snopes has any journalistic nor investigative credentials.

<comment><USER6> Very interested to see some sources for these things you mention in first para. Do you have them handy?

</comment></comment></comment><comment><USER7> One way to calculate this would be to use this controversy formula ([https://math.stackexchange.com/a/318510/10887](https://math.stackexchange.com/a/318510/10887)) on all comments of a user whose total karma exceeds a certain threshold, say 1000, and then add up those controversy scores.

The problems is that the HackerNews API ([https://github.com/HackerNews/API](https://github.com/HackerNews/API)) only provides a total score for a comment, instead of up and down votes, so you'd have to modify your controversy formula to use an appropriate measure of dispersion instead ([https://en.wikipedia.org/wiki/Statistical_dispersion](https://en.wikipedia.org/wiki/Statistical_dispersion)).

I'm not a statistician myself, so I can't help further.

</comment><comment><USER8> What do you want to do with this information ?

Getting downvoted in HN is not very hard. You can mention how Bill Gates is trying to buy a stairway to heaven or that Rust should replace C and you'll get spanked. If you express personnal opinions enough times on a website full of intellectuals you are bound to displease regularly unless you have nothing interesting to say.

It's a good thing. You can't be right all the time. You can't agree all the time. Actually, quite often you won't.

But to be downvoted spectacularly, it's quite easy: promote religion, or borderline sexist/racism allusions and you're it. Doesn't matter if you are right or not.

On the other end you can be pretty much who you want to be. I mean I worked in porn and had only one snarky remark about it during the last years.

<comment><AUTHOR> I mainly want to see what people are like who are effective but also don't care about being downvoted.

</comment></comment><comment><USER9> Several years ago, I started treating downvotes as feedback on what I wrote. Maybe I was not clear in stating my view. Maybe I did not sufficiently back my view up with examples, facts or rationales. Maybe what I wrote was just plain wrong. Maybe what I wrote didn't add anything to the conversation.

The practice of _editing_ [and deleting] of my comments seems to have made my writing better. Writing for myself is easier than writing for an audience. And writing for an audience that expects me to give a shit is harder than writing for the audience that admires people for pretending to not give a shit. And no doubt, this thread illustrates -- as if the rest of the internet did not already provide overwhelming evidence -- that there is a large audience for writing that pretends not to give a shit.

Flame warriors and trolls are the original internet crowd. Not giving a shit is not a unique point of view. It's the default content of all the little internet boxes into which people can type. It's good that downvotes hurt because the solution is writing something better.

Good luck.

</comment><comment><USER10> Maybe TerryADavis, he gets a lot of praise and admiration on HN for creating TempleOS, but his comments are often downvoted, and with good reason.

<comment><USER11> Bloody hell, he's definitely fallen out of the tree, hard. I just looked at his site [http://www.templeos.org](http://www.templeos.org) \- he sure does like to use the N-word.

<comment><USER12> Beeing shizoid, the ultimate minority, feels less outside of society, if you have someone to look down upon. If it was a normal person, i would call it racism- this way, i would call it desperat socializing, with a willingness to consier even racists as company.

</comment></comment></comment><comment><USER13> Comment voting is a form of mob rule that only serves to make the average person more comfortable while obstructing change.

In my opinion they need to be replaced with something more decentralized that puts each individual user in control of what kind of comments they want to see and makes them each decide individually.

Imagine if people who everybody disagreed with always got censored? We'd have all sorts of situations where everybody would suffer until things like basic hygiene for physicians were discovered. Oh wait, that already happened and you can read about it here - [http://www.medicaldaily.com/mad- scientist-6-scientists-who-w...](http://www.medicaldaily.com/mad- scientist-6-scientists-who-were-dismissed-crazy-only-be-proven-right-years- later-362010)

Online systems are so much more fluid than real-life and we have a good opportunity to change the way things are done, but unfortunately the biggest sites for conversation all follow the same brain-dead upvote/downvote system. I hope that one day we'll have a better system which at least lets individuals choose their own moderator or moderation style.

</comment><comment><USER14> [https://news.ycombinator.com/user?id=mjg59](https://news.ycombinator.com/user?id=mjg59) is a good one: a talented developer with strong views of free software, personal freedom and social justice. I can easily see individuals furiously upvoting and downvoting him on a single day.

(Not everything he says triggers these reactions, but it's entertaining when it does.)

</comment><comment><USER15> I would throw a vote in for Joshua Stein, person who started [https://lobste.rs](https://lobste.rs).

      > I was a frequent reader and contributor to Hacker News since 2007,
      > but got hellbanned[1] in 2012 for complaining about the mystery-
      > moderators constantly changing submission titles for the worse.

[1] - [https://jcs.org/notaweblog/2012/06/13/hellbanned_from_hacker...](https://jcs.org/notaweblog/2012/06/13/hellbanned_from_hacker_news/)

<comment><USER16> Oh, I didn't know that practice has been going on for that long. It's sort of become my pet-peeve as well, seeing as how the "war on clickbait" has resulted in moderators frequently changing perfectly good titles into bland three-word summaries that often do a worse job of representing the articles.

I think they're operating from a definition of "clickbait" that includes anything that makes a headline appealing, including any sort of pun or metaphor. There's nothing wrong with changing "Ten reasons MySQL is better than PG–and how switching may safe your Data". But it should be done sparingly, and default to respecting that the headline is also creative work, and deserves a bit of respect.

The worst example was [http://ascii.textfiles.com/archives/5139](http://ascii.textfiles.com/archives/5139). Halfway through, the post reveals that the author had a heart attack. Not mentioning it in the title was quite obviously a literary choice.

HN changed the headline, before changing it back, to something like "Jason Scott had a heart attack"

(but I guess I better shut up now :). I'd also like to mentioned that, with dead_posts=on, I've come across some seriously above-and-beyond work by dang. Just recently he was basically giving therapy to some guy posting wild rants in low-contrast posts at the bottom of some thread. )

<comment><USER17> [https://news.ycombinator.com/item?id=13765240](https://news.ycombinator.com/item?id=13765240)

</comment></comment></comment><comment><USER18> Since I got the pattern of downvoting, I am bored.

I thought first they were smart and it was funny to understand what wwould made you upvoted/downvoted.

Then I understood it was plain propaganda/censorship whether you were taking an opinion refuting the godliness and virtues of VC/startup/entrepreneur.

HN is the modern pravda except it is liberal instead of being sovietic.

Same shit

</comment><comment><USER19> Funny — I scrolled to the bottom and saw two comments citing two names that popped in my mind after reading the title: 'yummyfajitas, and 'michaelochurch.

There are other people who are "topically controversial", e.g. people who have a background in HFT getting downvoted on every HFT thread, and so on.

</comment><comment><USER20> _since the downvotes are painful to me._

Why?

<comment><USER21> I guess it's just the general loss aversion people experience - at least that's it for me.

<comment><USER22> Also I think getting downvoted for something when you honestly can't see that you did anything wrong is kinda hurtful, which happens mostly when downvoting is used as shorthand for disagreement. I've seen a single comment of mine go up-down-up-down with every refresh which still ended up at +4 or so. Which makes me curious if separate up- and down-counters might offer some additional insight over a single counter.

<comment><AUTHOR> Yeah, when you talk and track people's facial expressions in real time, you can see which particular things they disagree with, so you have useful feedback. A down vote is sort of like someone running up behind you and king hitting you, for something you said in some other group earlier, and maybe you don't know why. It's not always so non-specific...but not being able to respond to a downvote...makes it an incredibly potent tool to control discourse.

<comment><USER22> Yeah, I think being denied the opportunity to find out _why_ you are being downvoted, and maybe argue the point, makes you feel exposed and powerless.

Maybe one could even argue that at least a short reply should be a mandatory precodition for downvoting.

<comment><AUTHOR> Definitely. And I can't downvote back...so I don't like that asymmetry.

<comment><USER22> I think there might be a potential problem there in that retaliatory downvoting might be used as a weapon to disincetivise criticism, especially when (unavoidably) defensive retaliatory downvote cliques form.

So I think I would be okay with a mandatory anonymous reply as a precondition for downvoting.

<comment><AUTHOR> Oh no I didn't mean it in a retaliatory sense specifically, I meant it like everyone having the option to do it, or no one except the few ( the mods? the ones who have objective standards ) having the options.

I meant like they can downvote me, and I can't downvote them, or anyone, at any time, because I don't have that whatever the requirement is ( mod level, karma level ) yet...so it's like this asymmetry that doesn't exist in the real world.

I don't feel any restriction talking to any human in real life. Nothing they can do to me I can't do back to them. So it's balanced. I'm safe. We're equal. I understand other people may feel differently, this is how I feel.

But on HN, I can't downvote. So there's this asymmetry. To me, it's a perversion. Because in the real world, only the State has a monopoly on legal violence. Only the state can use violence, legally. But on HN, downvotes don't only come from mods or police, they come from whoever has accrued sufficient karma -- and I don't equate this with a sort of objective, regulated, principle-based State level power.

So the state has a (correct, IMO) asymmetric monopoly on legal violence and can dish it out to people as it sees fit, but people cannot do the same, without either expecting to get the same in self-defense, or getting consequences from the state. But on HN, any random Jo with enough karma has the analogous asymmetry power.

That's what I meant. It's not necessarily about retaliating, it's about having that option on the table, rather than some people having it and others not having it.

Or no one having it except the State ( the mods, I guess ).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER23> I guess idlewords? Always worth reading his comments

</comment><comment><USER24> michaeochurch

<comment><USER17> I guess that's a typo for michaelochurch.

</comment></comment><comment><USER25> yummyfajitas</comment>


Applescript hack: move screenshots from Desktop to iPhoto - <AUTHOR> http://terencepua.tumblr.com/post/3821374 <comment><AUTHOR> Couldn't post it on the thread b/c of formatting issues. Play with it.</comment>


Google's final proposal on distrust of Symantec-issued TLS certificates - <AUTHOR> https://groups.google.com/a/chromium.org/d/msg/blink-dev/eUAKwjihhBs/El1mH8S6AwAJ <comment><USER2> I find this funny. When it was just a proposal everyone talked about it. Now it's finalized and nobody seems to care. Old news?</comment>


OSCAR 1 - <AUTHOR> https://en.wikipedia.org/wiki/OSCAR_1 <comment><USER2> If you think to you might enjoy messing around with satellites, ham radio is pretty easy to get into these days. This is especially true for VHF/UHF, which is what amateur satellites use, and only requires the Technician license.

For equipment you just need a handheld VHF/UHF radio (as cheap as $25 for a Baofeng [http://www.amazon.com/BaoFeng-UV-5R-Dual-Radio- Black/dp/B007...](http://www.amazon.com/BaoFeng-UV-5R-Dual-Radio- Black/dp/B007H4VT7A) but I'd recommend a Yaesu, Kenwood, or Icom if you can afford it) and a simple yagi antenna (Google "tape measure yagi", or something like this if you don't want to DIY: [http://www.arrowantennas.com/arrowii/146-437.html](http://www.arrowantennas.com/arrowii/146-437.html))

[http://www.amsat.org/](http://www.amsat.org/)

[http://www.heavens-above.com/](http://www.heavens-above.com/)

[https://www.youtube.com/watch?v=c0CWz4Emyro](https://www.youtube.com/watch?v=c0CWz4Emyro)

[https://hamstudy.org/](https://hamstudy.org/)

<comment><USER2> Here's a good example of someone "working" a popular amateur radio satellite, SO-50: [https://www.youtube.com/watch?v=lhBs5DlKaVU](https://www.youtube.com/watch?v=lhBs5DlKaVU)

</comment></comment><comment><USER3> In American Morse Code, "HO" sounds like "HI" in international Morse Code, "HO HO" became "HI HI".

Huh?

<comment><USER4> [https://en.wikipedia.org/wiki/American_Morse_code](https://en.wikipedia.org/wiki/American_Morse_code) says that 'o' was encoded as 'dit <space> dit', whereas 'i' was encoded as 'dit dit'. International Morse Code changes 'o' to be 'dah dah dah'. I cannot see any evidence American Morse was used for radio, though it may have been.</comment></comment>


BillHero Messenger Bot- First Facebook Messenger Bot to Pay Bills - <AUTHOR> http://www.mybillhero.com <comment><AUTHOR> Seems like a really practical use case for a bot. This is what I got from their site and would love to hear if anyone else has tried it out:

THREE REASONS TO USE BILLHERO'S MESSENGER CHATBOT

Other available banking bots only provide information related to bank or credit card account activity, and don't actually pay bills. But BillHero does. Here's why you should check it out:

It's fast— For BillHero users, paying a bill is now faster than ever. Using the Messenger bot, users can quickly ask BillHero to add new bills or pay existing bills. It's like sending a message to a friend, except we can pay your bill at the end of a conversation.

It's reliable— BillHero is bank-agnostic, meaning users can pay any bill with any bank account, debit card or credit card. And since the company is partially owned by a bank and is being developed by banking security experts, BillHero naturally subscribes to bank-grade measures.

It's secure— Current users of the app can expect all the safety of the app translated to the Messenger bill pay Chatbot. Right now, you can select from existing payment methods within their app, but only non-sensitive information is pushed through the chat (like the last four digits of a credit or debit card). BillHero will also send a one-time authentication code that will authorize the Messenger thread for that chat session only, creating a more secure bill paying environment.</comment>


Ask HN: Share your best terminal tricks - <AUTHOR> <comment><USER2> Stuck in a broken remote session?

      <enter>
      ~.<enter>

want to use different command on last argument?

      less /path/to/some.file
      vim !$

piping and sudo

      sudo sh -c "my command | jq > meh.txt"

</comment><comment><USER3> To clear only the contents of a file (my most used and most favourite one esp with application logs)

cat /dev/null > any_file.txt

</comment><comment><USER4> Ctrl-D = EoF = Closes the term / tmux</comment>


Looking to master Node.js? We are hiring for three paid Node.js internships - <AUTHOR> http://blog.nodejitsu.com/intern-at-nodejitsu

<comment><USER2> I'm developing an app(real-time) using socket.io, mongoose,express and more. Is that enough? I bet that there's some hackers here way ahead of me. >:(

I would go even unpaid to get more experience.

<comment><USER3> Hey thiagofm, if you're interested, I also have an opportunity for you. Email me @ eric/nowjs.com

</comment></comment><comment><USER4> Bachelor's degree required?

<comment><AUTHOR> Not required. We'd much rather see an active Github account or experience working on open-source projects.

</comment></comment><comment><USER5> That's really awesome. I live just a block away from the Hack Haus.

<comment><AUTHOR> You should come by sometime! I'm here pretty much 24/7 writing Node code :-)

<comment><USER5> Yeah I think I'll do that soon.</comment></comment></comment>