React: Passing Props from one Component to another

There are some things that we just need to do to finish something fast. It’s inefficient but we can get back to later on. One of those examples is retrieving the fields you need from the database.

# Optimized way to get data 
SELECT first_name, last_name FROM users;
# Non-optimized way to get data
SELECT * FROM users;

In React, there some instances that we need to pass in props from one component to another and we are just too tired to do it right now. Here is a cool way.

Best way / Optimized

const { first_name, last_name, address } = this.props;
<ChildComponent
  first_name={first_name}
  last_name={last_name}
  address={address}
/>

Cool way / Non-optimized

<ChildComponent
 {...this.props}
/>

Remember that this isn’t the optimized thing to do

Screen shot 2017 11 15 at 8.54.00 am

 Linux: See the available disk space

The df command is a useful command that reports the total usage in all mounted filesystems in table format.

The first column shows the name of disk partition, ie, /devdisk1@ and devfs. Other columns normally show the Used Space, Available Space, and Capacity which is the percentage of available space against the used space.

Screen shot 2017 10 23 at 5.18.57 pm

 Global Regex Replace

Regular expression replacement will always have a place. The fastest way to replace substrings on a string is to split and join like to following:

let ourString = "My name is Leon. Your name is not Leon";
ourString.split("Leon").join("Buddy"); // My name is Buddy. Your name is not Buddy"

Regular expressions will let you replace string with conditions easily

let partialString = ":pensive: will only be replaced if :p is not followed by ensive"
let stringToFind = new RegExp(/:p(?!ensive)/, 'g');
partialString = partialString.replace(stringToFind, ":stuck_out_tongue:"); // :pensive: will only be replaced if :stuck_out_tongue: is not followed by ensive

Another example:

let partialString = 'party party party p';
let stringToFind = new RegExp(/p(?!arty)/, 'g');
partialString = partialString.replace(stringToFind, "party"); // party party party party

 Basic Linux Commands

There is never a shortage of good cheatsheets specially for Linux

Directory Listing

ls
Gemfile				app				dump.rdb			spec
Gemfile.lock

Directory Listing with hidden files

$ ls -al
total 1376
drwxr-xr-x   49 thorpeobazee  staff    1666 Sep 17 22:33 .
drwxr-xr-x   13 thorpeobazee  staff     442 Sep 17 21:06 ..
-rw-r--r--    1 thorpeobazee  staff     633 Sep  7 08:28 .babelrc
-rw-r--r--    1 thorpeobazee  staff     163 Sep 12 18:19 .eslintrc
drwxr-xr-x   16 thorpeobazee  staff     544 Sep 18 09:44 .git
-rw-r--r--    1 thorpeobazee  staff     736 Sep  7 08:28 .gitignore
drwxr-xr-x    9 thorpeobazee  staff     306 Jun  7 12:05 .idea
-rw-r--r--    1 thorpeobazee  staff      20 Sep  7 08:28 .jshintrc
-rw-r--r--    1 thorpeobazee  staff      30 Jun  5 19:35 .rspec
-rw-r--r--    1 thorpeobazee  staff     898 Jun 16 13:42 .rubocop.yml
-rw-r--r--    1 thorpeobazee  staff      14 Jun  5 19:35 .ruby-gemset
-rw-r--r--    1 thorpeobazee  staff       6 Jun  5 19:35 .ruby-version
drwxr-xr-x    5 thorpeobazee  staff     170 Sep  7 08:28 .storybook
-rw-r--r--    1 thorpeobazee  staff    2515 Sep 12 18:19 Gemfile
-rw-r--r--    1 thorpeobazee  staff   19934 Sep 12 18:19 Gemfile.lock

Change Directory

Changes directory to other_dir

cd other_dir

Show the name of the current working directory

$ pwd
/Users/mememe/projects/my_project