Coderica*

CREATIVE DESIGN

&& DEVELOPMENT


Gitting Into the Groove

I do NOT do rote memorization well. I used to cram little jingles in my head for each word and then forget them immediately after hyperventilating through a painfully long test. I thought I'd never have to memorize vocabulary again when I finished grammar in high school. WELL I THOUGHT WRONG. Memorizing commands is a huge part of learning to code. It helps that, for the most part, the language is very logical. Github and git and terminal and the general language of developing is incredibly intuitive. This was all created by people who wanted to make the process of creation as simple as possible. It's quite beautiful, really.

I have a tendency to make projects out of the information I need to learn. Forcing yourself to work with the language is the best way to learn it, and a lot of times you end up enjoying whatever it is you choose to work on. If all else fails, revert to jingles.

Terminal used to be this scary portal to the innards of my computer that I loathed to open in the rare case I needed to use it for something which I didn't really understand. Now its a powerhouse with direct access to all the amazing hidden capabilities in the dark corners of my computer. It is technically a CLI, or command line interface with an integrated language you must learn to be able to communicate with the operating system. That sounds like a bunch of shmancy talk, but its really pretty simple, and incredibly useful. To get started, I definitely recommend this site. Also, feel free to use my nifty little CLI wallpaper I made (remember my comment about little projects), because all the ones on the internetz are fugly.

GIT and GITHUB: Git uses a branching technique to manage and save multiple versions of the same file. What is magical about this is that it can be ANY kind of file. I'm shocked I didn't learn about this in design school, honestly (not to mention that it would have saved me SO MUCH HEARTBREAK). For all you dummies out there (it's okay, I'm a dummy too), multiple file versions are GREAT because if you screw up (which I plan to) or want to compare changes, you can refer back to previous versions. This is especially important in coding because if your client's website crashes, you have to make it work again. Without backups, basically you'd better hope your client isn't Nike. Github is basically an online portal for sharing/editing git versions, which makes working in teams incredibly fluid. Git is a software for your computer (which you access through the CLI), while Github is a great online resource (which you communicate with through the CLI... see where this is going?). TRUST ME, GIT MAKES SENSE.

I'll leave you with a funny little anecdote...I happened to save this post in notes before I knew how to push the file to Github. When I realized I had somehow accidentally deleted the note *SADFACE*. It was awful. So what did I do? Well first I flipped out...

WHERE ARE MY THOUGHTS?! OH GOD, NOT MY THOUGHTS! I'LL NEVER HAVE THE SAME THOUGHTS AGAIN. NNOOOOOOOOOOOO!! Then a little birdie mentioned Time Machine. Well it wasn't so simple as all that but I managed to get my thoughts back (yay for me! yay for you!) and the whole ordeal made me realize that Time Machine is A GIANT VERSION CONTROL MANAGER!! Yay again! The end.