What do you Google EVERY. SINGLE. TIME. and never just memorize?

Ben Halpern on October 19, 2017

at least extracting is easy (say it in a german accent) tar -xzf "xtract ze files"

well what works for me is tar -xzvf "xtract ze vucking files"
No kidding that's how remember it

That's a great way! Jajajaaj

But it's important to note that tar is smart enough to detect the format so I prefer the general tar -vxf

Even though as a German with decent English pronunciation this is a little bit insulting, I'll probably never forget this ever again. Thanks! 🙈

Isn't that for zipped tar files? -xzf = extract zipped (tar) file.

I threw this one at a dev I used to work with. He answered instantly, he could have disarmed 2 bombs with that speed.

Instant respect gained

I figured out how to remember it. To create tar, use c option and for extracting replace c with x ==> $tar will remain same for both Lol :) . tar -cvf filename.tar file/dir_path && tar -xvf filename.tar.

The same with me!! But I found VerbalExpressions (github.com/VerbalExpressions) to have solved it for me.

I usually just go to regexr.com and trial-and-error the syntax until it matches what I want.

How to find out which process is listening on a certain point on my mac. I'm often switching between projects, and have a server from another project running on a port that I now need for another server.

And it looks like Heroku's CLI doesn't always stop all processes correctly when you stop it using ctrl+c

You could add a function to your .bashrc to make this easier:

listening() {
    lsof -n -iTCP:$1 | grep LISTEN
}

Then (after restarting your terminal or typing source ~/.bashrc) type listening 8080 to find out what process is blocking that port.

How to properly write a Rails migration file.

Add a column? Huh? What???

Oh yeah. I always copy and paste from old files.

IIRC:

rails g migration AddStuffToTableName new_column1:integer new_column2:text #etc. etc.
  • Converting Array<->List in Java*. Been coding Java for 6+ years and still don't care to learn/memorize this.
  • Objective-C block syntax

  • bash test format and flags

  • vim macro create and execute

I noticed I could never remember these, so I always make aliases, shell functions, or short ~/bin/ scripts for them instead:

  • tar: xkcd.com/1168/

  • netstat flags (other than "-tulpn" which I have memorized as "tull-pin" like "Tolkien")

  • ssh tunnel syntax

Edit: *in one-line.
Array to list:

String[] array = ...;
List<String> immutableList = Arrays.asList(array);
List<String> mutableList = new ArrayList<String>(Arrays.asList(array));

List to array:

List<String> list = ...;
String[] array = list.toArray(new String[list.size()]);

Clear as mud...

Helpful protip. I learned yesterday, that list.toArray(new String[0]) is faster than the version with the explicit size given.

Regex. While I understand how it works and how it can be used, it's difficult for me to memorize the right regex that should be used at every point. So I just google whenever I want to make use of it. :)

I was just like that... but then I've found regex101.com/ and now, I'm almost proficiente writing regex!

regex101 is the single best resource I've ever found for regex.

It's funny in my case. I know enough regex to get by, but I generally need to google to find out how to actually apply it.

Do I need RegExp.prototype.test or String.prototype.match in JS? What are the order of parameters in preg_match in PHP? What are the little parentheses things called in .NET, captures or groups?

I had the same problem, until I found Rubular:

rubular.com/

Bonus tip: making a permalink will also save all the test cases used. Makes for an excellent inline comment!

Same here...
BTW, I knew someone must've been written about regular expressions when I read the title.. 😂

Same here. I can only remember $,,*,+ and /s /w. I always end up up googling an example and going from there.

I always have to Google regex. Or copied old code.

I can never remember how it works either. I found this to be helpful, though! regexr.com/

For me it's "manually start postgresql"

Every once in a while my postgres server isn't running and I know to punch that into my browser and land on this Stack Overflow question, where I proceed to copy this command into my terminal:

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

It happens infrequently enough that I never bother to alias it or remember how to type it out. I just remember what to Google.

I have postgres installed via homebrew. So I use brew info postgres to copy the start command :)

So did I then I realize how many precious minutes of my life I'm losing so I decided to buy a domain for 75 cents mycodesnippets.space :) I write things down little by little as soon as I need it the first time or I risk to never do it by lazyness !

I was gonna say this. Have bookmarked the stackoverflow post on this. :D

I could never remember "rails new myapp --database=postgresql" :|

Oh yes, I even googled and used this today because my service keeps stopping.

cant you just sudo service postgresql start ? :P

On Linux, yes. On OSX, no unfortunately.

I just ssh-k ↑ in zsh and just list all previous key generation commands or if I am not sure what I am looking for I use fzf

# fh - repeat history
fh() {
  print -z $( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | fzf +s --tac | sed 's/ *[0-9]* *//')
}

I was helping someone with this earlier this year. Ended up creating a helper for it:

gist.github.com/Kunde21/3633e1e9ef...

Javascript array methods. Is this one in-place, or returning a new array? I don't know, but MDN does!

Suprised tldr didn't got mentioned.

It's a pretty neat tool to do this kind of things...

Best link I've seen all week. Heroic!!!!!

How to extract tar.gz file in Linux command line!

Saw a comment from above and it changed my life.

tar -xzf filename xzf = "Xtract Ze Files!" (german accent)

Excellent, noté that you may get ride of the dash.

tar -xf filename

Read as tar eXtract File filename.
Saw this on an SO answer and never had to google it ever again :)

Wow, I never thought of it.

Thanks :)

Yeah. For some reason I really find some git procedures harder to memorise than others. It's ludicrous the number of times I've googled "git unadd a file" and "git reset branch to remote"

Oh boy, this gets me every. Single. Time.

Cherry picking commits in git, because I can never remember if it's cherrypick or cherry-pick

A more efficient way would be to just do it and correct if it errors, or alias it to git cherry or something

Also, how to exit vim, and how to insert in vim, and basically how on Earth did I end up in vim omg get me out

I've been using Vim now for about 24 years. Primarily because I don't know how to quit.

I would be responsible for 95% of hits coming from google search into the Tutorialpoint's html5 minimal template. Now I could easily type it in every time I set up a new page, but it is now a matter of extreme laziness I think.

How to "unignore" files with git... Here is a nice and short way.

This is stupid but g++ compiling filename and output order in the terminal. I've been doing it for four years now and still failing to remember.

ln -s [source] [destination] or ln -s [destination] [source] ?
find . -name [...] -exec grep '...' {} \;

And of course sed, awk and more generally shell syntax (if, loops, switch, etc).

I got a good way to remember argument order for ln:
Destination is optional so it must go second.
By default ln creates a link with the name of the source in the current directory.

Oh yeah, linking. Forgot about that one (obviously, since I need to Google it every time lol).

Many moons ago, at one of my first jobs, I got myself in trouble with this. I was editing something in prod without knowing how to save or exit. I was a windows nt guy mostly. So, like one does, I hard-rebooted the server instead of asking for help... After the dust cleared, my boss made me sit at a keyboard for over an hour launching vim and learning how to at least save and exit. :) I have :wq, :q,:q! burned into my muscle memory to this day...

Oh god why did they have the new guy making changes in prod you poor soul

I don't have to Google the spelling, but I'd say 99% of the time I type "valud". I say it correctly as "val-id" and only mistype because of the QWERTY keyboard layout. This is the only word that I consistently type incorrectly. It's not a speed thing (like "teh"), because it happens when typing slowly as well. I've been typing for a really long time and I'm beginning to think my brain just thinks this is a funny prank.

This! Plus a few other words: convenient, conscience, accommodate. I'm not a native speaker ;).

As a non native english speaker:

slice()

vs

splice()

Find a file in Linux. I know it involves "find" and "name" but I have to look up the exact syntax each time. (For reference, the sledgehammer version is find . -name testfile.txt from the root of the drive.)

Usually, anything that is outside of my basic Git workflow.

The best thing they ever added to Slack was the /shrug command.

PHP array_push and array_key_exists parameters order.

Argument orders in all array functions in PHP for me. That's just horrible. VSCode gives hints though, so that helps. I still have to look up the exact names of functions regularly, though.

this alone should tell you you need to use another language ;)

Updating the list of git remote branches. It doesn't refresh when you sync so it will continue to list remote branches that don't even exist anymore until you manually run the command below. (Which I had to google again to put in this comment.)

git remote update origin --prune

Git, brew, and bundler all have some kind of prune flag so it's starting to stick for me.

easy to remember because it is like dried fruit!

unzip a tar file especially with that different extensions .xz , .bz etc..

vim commands to cut,copy and paste

regex in python and other python builtins . Can't memorize the whole docs right ?

  1. I always Google how to create a webpack configuration file.
    • You need to be a 🚀👨‍🔬 to configure it from memory.
  2. Adding a style tag for CSS files 😝.

I literally added an alias to my ZSH config for this one

alias flushdns='sudo killall -HUP mDNSResponder'

My first choice was "Regex", but it seems you guys beat me to that choice.

So, without a shame I can say that everytime I search "how to insert an element at the end of another with jquery". Frigging append(), man.

What gets me is when I'm switching between languages. Java uses add, Python has append, and Ruby uses push. But then some gem will use add.

This is why I shamelessly use IDEs while everyone I work with uses vim.

flexbox and grid with all their different attributes and values :/

MySQL and PHP date formatting. Every time. What’s weekday again?

How to git checkout a remote branch. I’m gonna try it it without googling

git remote add repoFork <url>
git fetch repoFork
git checkout —track repoFork/branch

I hope that’s right I just looked it up again yesterday

"How to do x in CSS" where x is anything

  • CSS attributes
  • Rails generators
  • ActiveRecord queries
  • Syntax for any function I don't use on a weekly basis

How to use "find ... -exec ..." correctly.

The order of arguments for map/reduce/filter is JS. Was it (index, item) or (acc, index, item) or (item, index)....

The arguments for JavaScript's array.slice method. Every. Damn. Time.

How to use grep and find.
Also when I write data = {} in Python, is this a set or a dict?

This can't be a Set

data = {}

It's always a dictionary!
If you want an empty Set use:

data = set()

P.S. it's handy to use the official Python REPL and type type(youvariable) ;)

ever play:

vim-adventures.com/

?

bonus tip: a lot of unix commands support vim keys by default. i.e. less and man

Everything! 🤪
But seriously, I think I do a lot of Googling (and looking at Documentation - same thing?) for things which are new or I'm uncertain of or if I'm working with an SDK like Firebase.
Is that the way I'm supposed to do it? 😂 I'd rather get things right first time rather than get it wrong and THEN Google. Sounds like the other things people Google are a lot more advanced. 😳

When I accidentally commit on master instead of a branch and I need to reset my master to match origin:

git reset --hard origin/master

The argument order to the various PHP array functions

The order of arguments to the reduce callback or block in any language.

Yesterday was the first time I deleted a tag or branch (it was a tag) from a remote git repo without googling it first. Pretty proud of that.

In-place string substitution; usually performed on multi-gigabyte database dumps:

sed -i 's/STRING_TO_REPLACE/REPLACEMENT_STRING/g' reallybigdb.sql

alias_method in Rails. Confusingly, the arguments are the opposite order to Kernel#alias. And the examples for both are terrible!

Array.prototype.map() callback param order.

Javascript: substr vs substring. One takes start,end; other takes start,length. Would have been simpler if they only included one :(

Glad I’m not alone with this one. Been doing rails since pre-1.0 and still google “active record migration” every time.

Wether I'm looking for Javascript's call() or apply().

Updates with joins syntax in SQL. Always get the SQL Server and MySQL versions muddled.

How to cut and paste lines in VIM. I do this all the time when rebasing but can never remember the commands. I've just bookmarked the top result from each search for quick reference at this point.

R commands. ggplot2 options. Every single little thing in that language. I stopped learning at the <- for assignment.

Memory is not needed when you have your technical notebook for annotations :) (I have mine using org-mode)

Current UTC time. I will never remember what my time is in UTC time.

How to give a user (nopasswd) root privileges .-.

How to ignore chmod changes to files in Git :)

The order of the parameters in the function passed to $.each().

Switch statement format. I always forget where the {} and the () go.

And of course Regex - because memorizing Regex notation and rules is a waste of energy

For a long time it was the openssl sub commands, for instance to dump the text version of a certificate. :-)

With how many 'm's do I write git amend?

How to compile from source code on linux.

The word "lieutenant"

And print statements for various languages.

I still can comprehend why, but:

rm -rf mydir

Writing an Apache/Nginx configuration file.

Which of Java's string manipulation classes, StringBuffer or StringBuilder is the thread-safe one. I'm gonna have to Google that again.

Buffer! That's the one.

How to align div to the center. CSS. Every. Single.Time.

Converting UNIX timestamp to Excel date-time format with the correct timezone.

Date formats. SQL/JS/PHP all format dates differently and each one has different placeholders. I can never remember them. Ever.

How to vertically center a div for all browsers

"delete solr data", to clear data in solr core.

how to git ignore and how to discard current changes

Centralize stuffs with flexbox ( Or sizes ha ha )

IIS error messages on the yellow screen of death (YSOD)

How to list remote git branches.

How to kill a process running on some port.

Proper Regex syntax in the command line. "Wait I have to escape that?!"

CSS vendor --prefixes!
I refuse to memorize them. Hopefully one day we will not need them anymore.
Another classic is RegEx =/ =)

All the good ones are taken so I'll add one I haven't found: Markdown syntax.

  • Converting StdClass <-> Array in PHP -> I always forget 'True' as the second arg of json_decode()
  • Git Commands
  • Format for PHP date()
  • Casting to a class in Python3

How to grep a text file without comments (#) and blank lines!

How to rescan the scsi bus. Probably not a dev thing to do, but certainly a devops thing.

Tricky regex... empty a solr core... Python join array to string... Ssh tunnel local and remote port

Fixing "orphaned" users in SQL Server

Regexp, python join array to string, empty solr core, ssh tunnel local/remote port...

I always look up dd. Not because I don't remember the syntax, but because I am super respectful of its raw power to destroy my day if used wrong.

Great question, just need to firefox it. Definitely, will reflect on the question.

How to temporarily disable restraints in SQL and re-enable them.

OK, not really Googleing it, I have bookmarked the answer

How to use HTTP client. I'm a polyglot programmer and I just can't memorize this in any of the languages I know...

How to set up a docker container. Got to look this up every single time..

IIS HTTP_HOST redirects, most regex, git beyond the basics.

I recommend devdocs.io

Offline docs! ⚡️

Git revert. No chance to ever remember that.

Anything related to the nc, telnet, iptables tools

Almost every javascript library API...

When "gitignore is not ignoring" some file, there is always a line that I need to check to delete all the files from cache

How to revert my local branch to be exactly like its remote counterpart.


git reset --hard HEAD

Bootstrap default mobile navigations 😭

what are the order of arguments in short-syntax CSS like padding, margin...

mnemonic: it's clockwise starting from the top

Or, the more fun mnemonic I learned years ago: TRouBLe!

Yeah, I was thinking about this discussion another day, and I remembered this mnemonic... But damn, when I need to use, I Forget about it 😅
But thanks to both of you guys!

What the trim function is called in python

Java decompilers/deobfuscator even though I have my own written

Any switches I don't use often with linux commands.

Regexes, adding permissions in Android Manifest, how to update npm

Installing NodeJS and having npm install global packages outside default folder.

how to use make on the command line.

i have a problem with my wifi and regularly have to reinstall the drivers I forget every time and I don't have wifi, so it's a pain in the butt.

simple_form methods. I'm always at the readme, never bookmarked.

And I still think "I really need to bookmark this" every time.

How to remove password expiration in Oracle. It always happens at the worst possible time, but not often enough to have it memorized.

Starting / stopping services in linux. And it changes far to often.

substr or substring start from 0 or 1 in database and programming language specific

How to use fstream. 14 years doing c++ and still cannot open a file without looking at doc.

Iterating over keys in an object (#javascript)

  1. How to disable IPV6 on Linux
  2. Almost anything got to do with OpenSSL!
  3. How to cleanup docker ghost and dangling images

Objective-C block Syntax, i can‘t memorize it and i don‘t know why.

Everything related to timestamps and date formatting.

I recommend thefuck. brew install thefuck You will thank me for this message, I swear you will.

github.com/nvbn/thefuck/blob/maste...

  • Timestamp converter (instead of bookmarking one or using some CLI tool/$ScriptingLanguage)
  • How to set Duckduckgo as default search engine (only to annoy BigBrother :))

Inner joins. For some reason I always get close, but never get them completely right without some good ol' google help.

code of conduct - report abuse