Browse Source

initial commit

main
david 6 years ago
parent
commit
f1d9f91d00
  1. 4
      404.html
  2. 1
      CNAME
  3. 6
      README.md
  4. 4
      _config.yml
  5. 14
      _data/navigation.yml
  6. 18
      _data/websites.yml
  7. 2
      _layouts/default.html
  8. 32
      _posts/2016-03-10-ghost-to-jekyll.md
  9. 45
      _posts/2016-03-26-arch-linux.md
  10. 43
      _posts/2016-04-24-what-the-rice.md
  11. 61
      _posts/2016-05-02-passing-args-in-bash.md
  12. 6
      _posts/2016-06-05-hello-world.md
  13. 6
      _posts/2016-06-05-the-new-socialnerds-dot-org.md
  14. 5
      about/index.md
  15. 5
      assets/css/hire.scss
  16. BIN
      assets/img/favicon.ico
  17. BIN
      assets/img/favicon.png
  18. BIN
      assets/img/new-blog-who-dis.jpg
  19. BIN
      assets/img/new-blog-who-dis.png
  20. 36
      hire/index.html
  21. 11
      index.html
  22. 14
      me/index.md

4
404.html

@ -1,8 +1,8 @@
---
layout: default
title: Page Does Not Exist...
title: Page not found.
permalink: /404.html
---
<p><a class="post__back" href="/">&lt;-- back</a></p>
<br>
<p>Sorry this page does not exist...</p>
<p>Page not found.</p>

1
CNAME

@ -1 +0,0 @@
micahcowell.com

6
README.md

@ -1,5 +1,3 @@
# getmicah.github.io
My blog made with [jekyll](http://jekyllrb.com) and hosted with Github Pages.
# socialnerds.org
### License
All this stuff is under the [MIT License](https://raw.githubusercontent.com/getmicah/getmicah.github.io/master/LICENSE)
This is the Jekyll project for https://socialnerds.org.

4
_config.yml

@ -1,6 +1,6 @@
# My variables
name: Micah Cowell
description: Futuristic web design
name: socialnerds.org
description: less is more
google_verification: null

14
_data/navigation.yml

@ -1,14 +1,2 @@
- title: home
url: /
- title: about
url: /me
- title: contact
url: mailto:micahcowell99@gmail.com
- title: github
url: https://github.com/getmicah
- title: twitter
url: https://twitter.com/getmicah
url: mailto:hello@socialnerds.org

18
_data/websites.yml

@ -1,8 +1,14 @@
- name: Gif-Giving
url: http://gif-giving.com
- name: "E-Mail - excelsior.socialnerds.org"
url: https://excelsior.socialnerds.org
- name: Sheri Koetting
url: http://sherikoetting.com
- name: "ownCloud - cloud.socialnerds.org"
url: https://cloud.socialnerds.org
- name: GetPeppers
url: http://getpeppers.com
- name: "Git - socialg.it"
url: https://socialg.it
- name: "Mumble server - gmur.ml"
url: https://gmur.ml
- name: "Minecraft server - falcon.socialnerds.org"
url: https://falcon.socialnerds.org

2
_layouts/default.html

@ -18,7 +18,7 @@
<meta name="google-site-verification" content="{{ site.google_verify }}">
{% endif %}
<link rel="icon" href="/assets/img/favicon.png">
<link rel="icon" href="/assets/img/favicon.ico">
<link href='https://fonts.googleapis.com/css?family=Inconsolata:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="/assets/css/main.css">
</head>

32
_posts/2016-03-10-ghost-to-jekyll.md

@ -1,32 +0,0 @@
---
layout: post
title: Why I Switched from Ghost to Jekyll
---
**TL;DR** Use [Jekyll and Github Pages](https://help.github.com/articles/about-github-pages-and-jekyll/) for a cheap and maintainable blog.
I made a new blog! For the past few months I had been content with [Ghost](https://ghost.org), the publishing platform for professional bloggers. I enjoyed its simplicity and even made a couple themes for it (check them out on my [Github](https://github.com/getmicah)), but as time went on I got tired of paying for server time every month. With all the buzz about "static blogs" I decided to give it a try. Inevitably, I came across Github Pages and Jekyll. Free hosting and a static site blog? Yes, Please.
It wasn't like there was anything wrong with Ghost. I was just tired of paying to host it on a server. Also, there were quite a few things that I didn't even realize I'd like before using Jekyll.
# Static Site
One of those being the idea of a static website being generated and no need for a backend. This just makes sense and everything is very fast. Jekyll also automatically generates your Sass files into css which is very handy (no need setting up gulp every project).
# Local Posts
Another thing I especially appreciate about Jekyll is how all your posts are stored locally. You just type out your post in markdown in your editor and push to Github to post. Also, its implementation of drafts is extremely useful because you can see how they look locally before making them a post.
# Variables
The use of variables has to be my favorite feature. It splits variables up between site and page variables. Site variables would include the name of your blog and the description while page variables would be the name of the post or the date. You can include your own site variables inside the &#95;config.yml file, such as a Google Analytics code or something of the nature.
# Data Files
Another way to access info in your blog is through data files. Instead of just variables, data files allow you to create a YAML, JSON, or CSV file to put data into. For example on this site I have /data/websites.yml file where I store the websites I've made, the fields being the name and url, and then loop them into a list inside my html.
# Maintainable
Everything is through Github, which is where I would be putting my code anyways, so it makes sense that it would also be where I host my website. Making changes to my blog is painless. All I have to do is push the code to Github whenever I make changes (though all changes should be tested locally).
# Conclusion
So why did I switch to Jekyll? Simply the speed and price. The free hosting, static site generation, and complete control make it, in my opinion, the best option for any web developer desiring a blog. With Github Pages there's no need to check on your server nor do you have to worry about having the latest software, Github just does it for you.
<br>
For more information about Jekyll, check out the [Docs](https://jekyllrb.com/docs/home/).

45
_posts/2016-03-26-arch-linux.md

@ -1,45 +0,0 @@
---
layout: post
title: Arch Linux is Cool
---
For most my life with computers I have either used Windows 7 or Linux. Windows was great but once I finally decided to try Ubuntu I never went back. I tried out all sorts of Linux distros (ie. Elementary OS, Crunchbang, Linux Mint) but none of them seemed right for me. After doing some searching around and I came to the conclusion that I had to attempt the unthinkable, Arch Linux.
# About My Computer
*Hardware*: The PC I mainly use is a desktop that I built a few years back with a Intel Core i5, Nvidia GTX 650ti, and 8 GB of RAM.
*Usage*: On my computer I mainly write code using a basic text-editor (i.e. atom or sublime text) and browse the web. I sometime play video games on Steam, which include Civ5 and Besiege.
# The Dreaded Installation
Getting Arch Linux up and running on your computer really isn't that bad. Arch has great [documentation](https://www.archlinux.org/) and the [beginner's guide](https://wiki.archlinux.org/index.php/beginners'_guide) makes everything very straight forward. It still took me a couple of tries to get a stable desktop environment (graphic drivers were tricky) but once I got all the basic stuff taken care of I was finally able to begin making the operating system I really wanted.
# So Why use Arch?
I'd be lying if I said I didn't use Arch because it makes me feel like a hacker elitist. Also seeing all the beautiful desktops on [/r/unixporn](https://www.reddit.com/r/unixporn) also influenced my decision in using Arch. But, there are some legitimate reasons on why I prefer Arch over other Linux distros or any operating system for that matter:
* The best performance
* I choose what's installed
* Always the latest software
* Installing software is easy with pacman
* Very intelligent community
* Teaches you about how Linux works
# Conclusion
I really do see myself sticking with Arch for quite some time. With its rolling releases there will be no need to ever have to install any major updates and I have everything I really need in a computer. Though some things aren't perfect (ie. Steam isn't great yet) it's worth it for the gains in performance
# What's on my PC
Here's a short list of things I have installed on my main Arch Linux computer.
* Gnome 3 with [arc-theme](https://github.com/horst3180/arc-theme) and the [Paper icons](https://snwh.org/paper/icons/)
* bspwm (if I'm feeling extra hackerish)
* [mpv](https://mpv.io/) for all forms of media (ie. music and movies)
* Google's open source browser [chromium](https://wiki.archlinux.org/index.php/chromium)
* [atom-editor](https://aur.archlinux.org/packages/atom-editor-bin/) for coding (should probably learn vim better)
<br>
*Update:* I changed some of the "What's on my PC" entries due to the input on [reddit](https://www.reddit.com/r/archlinux/comments/4c4mmh/blog_post_arch_linux_is_cool/). Thanks!

43
_posts/2016-04-24-what-the-rice.md

@ -1,43 +0,0 @@
---
layout: post
title: What the Rice?
---
**TL;DR** Here are my [dotfiles](https://github.com/getmicah/dotfiles).
*Disclaimer*: I am in no way a ricing expert. This guide is intended for fellow beginners confused on the very basics when it comes to the customization of their Unix system.
# Introduction
After making my departure to Arch Linux a month ago I was quickly introduced to the world of tiling window managers. The idea is that instead of having a full blown desktop environment (DE) such as Gnome or Unity, you just have a window manager that utilizes keyboard shortcuts to organize your windows. With this you are able to create a very customizable experience without using up all your system's resources.
# So What is Rice / Ricing?
Ricing is term conceiver [/r/unixporn](https://www.reddit.com/r/unixporn) to someone who is customizing their linux distribution such as their the system icons and the color of the terminal. When it comes to ricing a tiling window manager though, the ricing of a user's system becomes much more involved. Basic things such as the panel bar and application launcher must be configured by the user.
# The State of Ricing
It's and there are more ways than ever to rice your PC. The reddit community [/r/unixporn](https://www.reddit.com/r/unixporn) is a great place to stay up to date on what people are using for their setups.
*Window Managers:*
The most widely used WMs at the moment seem to be the young [bspwm](https://github.com/baskerville/bspwm) and the widely used [i3wm](https://i3wm.org/), though people are also making some awesome [openbox](http://openbox.org/wiki/Main_Page) desktops.
*Panel / Bar:*
Lots of redditors are also using some sort panel or bar in the configuration which displays all sorts of information such as the time, volume, even the current song playing. I'm not going to go into much details on how panels work, but if your interested check out [z3bra's great introduction](http://blog.z3bra.org/2014/04/meeting-at-the-bar.html). At the moment, [lemonbar](https://github.com/LemonBoy/bar) seems to be the best option for creating a panel in your WM but other options such as i3bar also work great and are built into i3wm. You can check out my lemonbar files in the link at end of this page.
*Program Launcher:*
When it comes to launching programs in linux, there has always been many ways to do it. You could just execute the program from a terminal emulator but that's lame and some programs make the terminal log for errors when executed like this. As I write this post [dmenu](http://tools.suckless.org/dmenu/) and [rofi](https://davedavenport.github.io/rofi/) are the goto applications launchers for many ricers. Rofi is actually "A window switcher, run dialog and dmenu replacement" according to its homepage which means it can do a lot more than just execute your web browser (most of which I have yet to experiment with).
*Terminal Emulator:*
The last part of ricing that I'm going to explain in this guide is the terminal emulator. The terminal emulator allows the user to interact with the Unix shell while in the X environment, according to the [Arch Wiki](https://wiki.archlinux.org/index.php/Category:Terminal_emulators). I personally use [urxvt](https://wiki.archlinux.org/index.php/Rxvt-unicode), or rxvt-unicode, which I think works very well with window managers and is very customizable through the .Xresource file in your home directory. The terminal is a very important part of a good ricing and is very
# What Do I Use?
Here's a list of what I'm using on my Arch Linux System:
* WM: bspwm
* GTK: arc-theme
* Icons: papier
* Bar: lemonbar
* Terminal: urxvt
* Launcher: rofi
* Files: pcmanfm
<br>
All the [dotfiles](https://github.com/getmicah/dotfiles) can be found on Github. If you want to see a gallery of what my desktop looks like at the moment, check out my [reddit post](https://www.reddit.com/r/unixporn/comments/4f3rm0/bspwm_some_blue/) where can find some more details and a gallery.

61
_posts/2016-05-02-passing-args-in-bash.md

@ -1,61 +0,0 @@
---
layout: post
title: Passing Arguments in Shell Script
---
**TL;DR** Just skip to the [good part](#the-good-part)
# Basic Arguments
The other day I started making this shell script program [spotify-now](https://github.com/getmicah/spotify-now), which gets information on the current Spotify song using the dbus message from the media player. When writing this script I wanted to be able to pass in parameters to the script from the command line using arguments.
This is easy as all you have do is use the `${n}` variable to get the parameter (n being the position of the argument). With my script it looked something like this:
#!/bin/bash
# spotify-now
getTitle () {
...
}
echo "$(getTitle ${1})"
<hr class="codebreak">
$ ./spotify-now title
How Much A Dollar Cost
Although this solution is quick and easy, it's also very limiting in the parameters you can pass and made for some messy terminal commands.
<h1 id="the-good-part">Using Strings in Arguments</h1>
When brainstorming for a better way to pass command line arguments I came across the `date` command. This unix program prints out the system's time and date information. What intrigued me about this command is how it took in a date string containing keywords such as the name of the month or what hour it was.
$ date '+Date: %b %d'
Date: May 02
I decided to find a way to implement this into my script. Usually, something like this would be done with a language such as C or Python but I was determined to stay with a simple shell script seeing as though it was a small program and I didn't want to over complicate things.
To do this sort of thing in shell script all you have to do is replace the keywords in the string argument with the data you want. You have to do this for each keyword and error checking can be tedious but really not much worse than doing in any other language.
#!/bin/bash
# spotify-now
getArtist () {
...
}
getTitle () {
...
}
INFO="${1}"
INFO="${INFO//"%artist"/$(artist)}"
INFO="${INFO//"%title"/$(title)}"
echo "$INFO"
<hr class="codebreak">
$ ./spotify-now "%artist - %title"
Kendrick Lamar - To Pimp A Butterfly
<br><br>
Of course all this code is on my [Github](https://github.com/getmicah/spotify-now) and please do fork it and make pull requests regarding any issues or improvements you may have with my code.

6
_posts/2016-06-05-hello-world.md

@ -0,0 +1,6 @@
---
layout: post
title: Hello world!
---
This is some sample content.

6
_posts/2016-06-05-the-new-socialnerds-dot-org.md

@ -0,0 +1,6 @@
---
layout: post
title: The new socialnerds.org
---
This is some sample content.

5
about/index.md

@ -0,0 +1,5 @@
---
layout: about
---
socialnerds.org connects a couple of nerds (who do also exist in a social “real life” environment) doing interesting stuff like writing code, playing around with hardware, getting to know the latest operating systems, gaming old classics and doing whatever is fun doing with a computer (or something similar).

5
assets/css/hire.scss

@ -1,5 +0,0 @@
---
---
@import "reset";
@import "config";

BIN
assets/img/favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
assets/img/favicon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

BIN
assets/img/new-blog-who-dis.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

BIN
assets/img/new-blog-who-dis.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 200 KiB

36
hire/index.html

@ -1,36 +0,0 @@
---
---
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<title>Micah Cowell</title>
<meta name="description" content="Available For Hire">
<link rel="icon" href="/assets/img/favicon.png">
<link rel="stylesheet" type="text/css" href="/assets/css/hire.css">
</head>
<body>
<div class="hire">
<div class="header">
<p>Hello, my name is Micah.<br />Let's make something awesome.</p>
</div>
<div class="work">
</div>
</div>
</body>
</html>

11
index.html

@ -5,11 +5,18 @@ layout: default
{% include header.html %}
<div class="portfolio">
<h1>Web Design:</h1>
<p>
SocialNerds is bla...
</p>
</div>
<div class="portfolio">
<h1>Projects:</h1>
<ul>
{% for websites in site.data.websites %}
<li>
<a href="{{ websites.url }}">{{ websites.url }}</a>
- <a href="{{ websites.url }}" target="_blank">{{ websites.name }}</a>
</li>
{% endfor %}
</ul>

14
me/index.md

@ -1,14 +0,0 @@
---
layout: about
---
Hello, my name is Micah Cowell. I am a self proclaimed web developer who likes the internet, hip hop, and fancy yo-yos.
# What do you do?
I make website and stuff. All the code I write is on my [Github](https://github.com/getmicah).
# Who are your favorite artists?
Currently I'm listening to a lot of James Blake and Kaytranada.
# What programming languages do you use?
When making websites I like using Javascript and Sass but I also like Python and bash for making linux scripts.
Loading…
Cancel
Save