<!DOCTYPE HTML>
<!--
	Massively by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
	<head>
		<title>Projects</title>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
		<link rel="stylesheet" href="assets/css/main.css" />
		<noscript><link rel="stylesheet" href="assets/css/noscript.css" /></noscript>
	</head>
	<body class="is-preload">

		<!-- Wrapper -->
			<div id="wrapper">

				<!-- Header -->
					<header id="header">
						<a href="index.html" class="logo">Projects</a>
					</header>


				<!-- Nav -->
					<nav id="nav">
						<ul class="links">
							<li class="active"><a href="index.html">Home Page</a></li>
							<li><a href="writing.html">Writing</a></li>
							<li><a href="projects.html">Projects</a></li>
							<li><a href="resume.html">Resume</a></li>
							<li><a href="aboutme.html">About Me</a></li>
						</ul>
						<ul class="icons">
							<li><a href="https://linkedin.com/in/colin-macrae-0435aa141" class="icon brands fa-linkedin"><span class="label">LinkedIn</span></a></li>
							<li><a href="https://github.com/comacrae" class="icon brands fa-github"><span class="label">GitHub</span></a></li>
						</ul>
					</nav>

				<!-- Main -->
					<div id="main">

						<!-- Post -->
							<section class="post">
								<header class="major">
									<h1>Bash-like shell</h1>
									<p>A very simple bash-like shell implementation ( C, Unix).</p>
								</header>
								<div class="image main"><img src="images/bashexample1.jpg" alt="" /><em></em></div>
								<p>
									The result of my first group coding project and easily my biggest project to date. Implements I/O redirection, piping, and a very simplified version of 
									background processing, as well as four builtin commands: cd, echo, exit, and jobs.
									<a href="https://github.com/comacrae/bashshell">Check out the source code or try it yourself!</a>
								</p>
							</section>
						<!--Post-->
							<section class="post">
								<header class="major">
									<h1>Data Cache Simulator</h1>
									<p>A Data Cache Simulator created for a computer design and architecture course (C++).</p>
								</header>
								<div class="image main"><img src="images/cdaproj1.png" alt="" /><em>Example run on tcsh shell</em></div>
								<p>
									This program simulates a datacache using a LRU (least recently used) replacement algorithm and a write-back and write-allocate policy.
									<a href="https://github.com/comacrae/datacachesim">Check out the source code or try it yourself!</a>
								</p>
							</section>

						<!-- Post -->
							<section class="post">
								<header class="major">
									<h1>SQL CRUD Server in Flask</h1>
									<p>Database and webpages for a restuarant review server (Python and HTML).</p>
								</header>
								<div class="image main"><img src="images/py.jpg" alt="" /><em>Example run on my Linux machine (Mint distro)</em></div>
								<p>
									A set of python modules which create an SQL database for restaurant reviews and allow a user to interact with the database through html pages and Flask functions.
									<a href="https://github.com/comacrae/pythonflasksql">Check out the source code or try it yourself!</a>
								</p>
						<!-- Post -->
							<section class="post">
								<header class="major">
									<h1>Server Simulator with Password Encryption</h1>
									<p>A program simulating a server implemented with hashtables which stores a username an encrypted password (C++).</p>
								</header>
								<div class="image main"><img src="images/dump1.jpg" alt="" /><em>Example run on tcsh shell</em></div>
								<p>
									This program simulates a server containing usernames and encrypted passwords, implemented using a hashtable. Besides adding users/passwords, you can view the server's contents
									within the terminal or print the formatted contents to a file.
									<a href="https://github.com/comacrae/serversim">Check out the source code or try it yourself!</a>
								</p>
							</section>
						<!-- Post -->
							<section class="post">
								<header class="major">
									<h1>This Website!</h1>
									<p>This is my first "manually-coded" website</p>
								</header>
								<p>
									I am a believer in learning by doing, and this website is a fantastic example of the success (and fun!) you can have with that attitude. Following some 
									<a href="https://www.youtube.com/watch?v=u-RLu_8kwA0">guides</a> on Youtube and elsewhere, I was able to take a template from <a href="https://html5up.net">HTML5 UP</a> 
									and tailor it to my needs and desires. It forced me to experiment with CSS (which I had never touched before) and was a really great way to merge my creative side with coding. 
									All images were sourced from 
									<a href="https://unsplash.com/">Unsplash</a>. Feel free to reach out if you have any questions or would like help with making a site of your own.
									<a href="https://github.com/comacrae/comacrae.github.io">Check out the source code for this site!</a>
								</p>
							</section>
					</div>

				<!-- Footer -->
					<footer id="footer">
							<section>
								<h3>Email</h3>
								<p><a href="mailto:comacrae1995@gmail.com">comacrae1995@gmail.com</a></p>
							</section>
							<section>
								<h3>Social</h3>
								<ul class="icons alt">
									<li><a href="https://linkedin.com/in/colin-macrae-0435aa141" class="icon brands alt fa-linkedin"><span class="label">Linkedin</span></a></li>
									<li><a href="https://github.com/comacrae" class="icon brands alt fa-github"><span class="label">GitHub</span></a></li>
								</ul>
							</section>
						</section>
					</footer>

				<!-- Copyright -->
					<div id="copyright">
						<ul><li>&copy; Untitled</li><li>Design: <a href="https://html5up.net">HTML5 UP</a></li></ul>
					</div>

			</div>

		<!-- Scripts -->
			<script src="assets/js/jquery.min.js"></script>
			<script src="assets/js/jquery.scrollex.min.js"></script>
			<script src="assets/js/jquery.scrolly.min.js"></script>
			<script src="assets/js/browser.min.js"></script>
			<script src="assets/js/breakpoints.min.js"></script>
			<script src="assets/js/util.js"></script>
			<script src="assets/js/main.js"></script>

	</body>
</html>