Daily Coding Log

“Continuous improvement is better than delayed perfection.” – Mark Twain

9/17/18 – 9/21/18

Second full week as a web dev. A lot more learning and taking online courses. We went over more of the applications that were built and future projects that we’ll be working on and man…there’s so much stuff to know. I say that with optimism too because it gives me so much potential to learn new (and old) programming aspects. Over the weekend I started looking into how to create an automatic irrigation system with my old arduino. The arduino uses C but the code is so simple that the unfamiliar language shouldn’t be that big of a headache. Anyways, onward to week 3 of being a webdev. I’ll make a harder attempt to update this more on a daily basis rather than weekly.

9/10/18 – 9/14/18

So this was my first full week as a web developer. Not surprisingly, I didn’t do much coding as I was going through the usual new hire orientation of sorts which involves learning mostly about the company and its ins and outs. I did get the chance to watch some videos from Frontend Masters about some basic computer science principles such as The Big O and general sorting algorithms. Oh! I need to point out the sheer number of tools and utilities that are required as a web dev. There’s like 12 different tools that we use for various things. I have to admit, I was kind of intimidated when I was shown the list of all the tools and utilities that I would need to get configured on my computer but after looking at each one and writing down what it does and learning a bit more about it, the less intimidating all of it became. I suspect this week will be much more involved with coding so I should have some juicy bits of code to log about here.

9/7/18

Been off my game lately. I’ve actually been coding a bit in the mornings but forgetting to update my log. Since I’ll be starting as a full-time web dev soon, this will be my life for 8+hrs a day. Ill update this log still with personal projects Im working on and possibly things I learn during the day. Im trying not to be super over-ambitious in my goals as I have a feeling after coding for over 8+hrs each day Im not sure how inclined I am going to be to work on personal stuff each and every day as I am now. Who knows, Im super nervous and excited at the same time. I start in 3 days, will soon to update with my thoughts/feelings during my first week.

8/29/18

So… I GOT A JOB AS A WEB APPLICATION DEVELOPER!!! I actually got the news a few days ago but didn’t want to make it official until everything was 100%. I’ve been taking the past few days to process what this means for me. Its been something I’ve worked at for such a long time that Im beyond words in my excitement. I can’t wait to dedicate a full-time position to something I’ve been doing on the side for so long.

8/24/18

Finally figured out the syntax error, the Component had to wrap my whole application that I was working on in brackets. I had it just wrapping up till the end of the constructor. Spent a lot of time on this dumb mistake but at least now I wont forget.

8/23/18

Continued the Todo lesson. Got hung up on a syntax error, will need to figure out tonight or tomorrow.

8/22/18

Today was monumental for me. Details later.

On the coding side: keep up with the React Todo tutorial. I really need to get a good understanding of ‘this’ because its still confusing the heck out of me in a lot of instances. A thought that popped up as well (unrelated to the react app) was creating a ‘training’ program sort of like a workout program. Like a series of exercises that are potentially good for warming up coding chops before starting on a project? Not sure if the same workout principles apply to coding in this regard but Im sure there are overlapping benefits.

8/21/18

Finally got a React syntax highlighter package for Sublime. I’ve been coding this whole time with weird syntax highlighting and I finally decided that I needed to do something about that. Continued with the Todo App tut, got new todos logging in the console.

8/20/18

Continued the react todo tutorial.

8/19/18

Started on a React Todo application.

8/15/18

Got my site forwarding to HTTPS correctly (finally). I feel like a big dumb dumb having so many issues with it but oh well. I also updated my photography page to pull in through my Flickr API. Not the swankiest photo gallery but it’ll do just to showcase my other hobby.

8/14/18

Messed around with my blog style some. Either Im stupid or WordPress isn’t as straightforward as I initially thought it was. I was just looking to add a simple photo gallery but started running into issues with the photo sizing. Then I was looking up how to add portfolio-like styles to pages and WP provided documentation on how to do it without a plugin but my settings apparently do not support what they claimed so I started looking at stupid plugins. Anyways, kinda a wash day as I didn’t really do much ‘coding’ but more or less ways to organize my website.

8/12/18-8/13/18

So I’ve been reading a lot about DEF CON since it just finished up over the weekend. These people are on another level when it comes to coding. Like the stuff Im reading is just other-worldly to me when it comes these peoples’ coding abilities. Its so inspirational though, I can’t wait to delve more into this kinda stuff.

8/11/18

~BREAK~

photo editing day

8/10/18

Well crap, my post about Learning Code While Working a Full Time Job exploded much more than I thought it would. So to anyone browsing my website, welcome! Im really taken back how great of a response this has gotten. Just going through and reading all the comments and twitter feedback has been such an amazing experience. I really hope I can keep delivering content that resonates with people like this

8/9/18

Finally fished my post about learning code while working a full time job. You can view it on the homepage to my site or the dev.to article

8/8/18

Printed out my Weather App (yes, onto physical papers) and made notes on how the application runs from user input all the way through the app until it gives back weather data to the user. It was a super great technique for learning the big picture. This will definitely be a future blog post.

8/7/18

Continued with the blog post. Pretty much done with it but want to style it a little better for the dev.to post that I am going to launch in tendem with my personal website one.

8/6/18

Feeling burnt the eff out after spending 6+ hours yesterday coding. Today I figure it would be a good day to start a new blog post. I started writing “How to Learn Code while Working a Full Time Job”. Im jotting down my tips/tricks that have worked for me.

8/3/18 – 8/5/18

This was the home stretch. I spent 3 days finishing up the front-end application for my weather app. I was tasked to define the URL params in Express and push those through with React. This was incredibly difficult for my skill level and got some help from a good friend on it. In the end, it works. You can find the working app here:

https://fathomless-hollows-27654.herokuapp.com/

I need to take a breather at this point. Maybe take a moment to recollect all that I’ve learned and go back over foreign concepts that I received assistance with. Overall, it was a great learning experience and Im a much better developer at the end of the day for this.

8/2/18

I didn’t really update my coding log on the fact that I started on the Tyler Mcginnis React course. Started doing this about a week ago and today I just learned a little about Props and how they connect to the components.

7/30/2018

There was an issue with my “median” function from the Weather API. It was trying to pull the data as a string instead of an array. I fixed this

7/28/18 – 7/29/18

Researched React and spent hours building a frontend to work with my Weather API that I had built in the previous weeks. At the moment, its ugly, but I’ve successfully passed data from my API to HTML with a swanky front-end JS language! (lots of help from my good friend Hunter for guiding me a bit)

You can see the working version here – https://fathomless-hollows-27654.herokuapp.com/

7/16/18 – 7/27/18

VACATION!

I went to California to visit family and fart around L.A. Was a fun time although Im now a tad rusty on some concepts I had learned right before my leave.

7/13/18 – 7/14/18

Im posting this from the future so my memory is a little fuzzy. Though I got the weather app launched on heroku which took a bit to figure out. Its on the platform itself but when launching the app it unfortunately doesn’t work.

7/12/18

What a day. Got on discord and screen shared with GK regarding a JSON output of my weather data. Used res.json that I needed to wrap within app.get :

app.get(‘/’, (req, res) => {
let retVal = {};
getData(function(data){
let numbers = [data];
retVal.mode = findMode(numbers)
retVal.mean = findMean(numbers)
retVal.median = findMedian(numbers)
res.json(retVal)
})

The res.json worked a bit differently than I thought, glad GK saved me some headache. Need to reach out more often for assistance because he made it so much clearer than if I spent the next 4 hours researching this. Afterwards I pushed the app to Heroku but it doesnt appear to work …. womp. But it works locally so its probably just a simple configuration fix.

7/11/18

Pulled the weather app from repl.it and booted up a node/express server on my local machine. Made sure it worked on port 9090. Created new github repo and pushed current files there: https://github.com/Beznet/weather-forecast-app

7/6/18 – 7/10/18

Man sorry for the missed updates but to be honest, its because I’ve been coding so much I’ve burnt myself out before I can get a chance to note everything down. Ok so from my last update, I figured out how to get multiple modes after quite some digging. Turns out not too many people out there have had to figure out multi-mode algorithms in javascipt. I think it might make for a good blog post considering there doesn’t appear to be a definitive how-to out there.

So then I went onto Pt. 2 which was to replace my dummy array with real life data. To do this I was tasked to pull the 3 Day Forecast for the weather in my city and use those temperatures to calculate Mean/Median/Mode. To do this I had to pull the forecast from Openweathermap.org ‘ API, so I got a real life taste of how to pull API data. After this I ran into countless issues trying to parse through the JSON data and then getting it to pass through my mean/median/mode algorithms. That also could potentially be another blog post to write a how-to about because there wasn’t much info that I could find on the subject. Man once I got it to work though, it was such a great feeling. I’ve probably clocked close to 12hrs just on these two assignments but Im learning a ton.

7/5/18

Continued with the ‘Mode’ exercise, found how to get a single mode but really struggling with finding multi-mode solution.

7/4/18

Started on Mean/Median/Mode exercises. Successfully figured out Mean and Median but Mode is giving me some issues.

7/3/18

Went through the whole beginning of my coding journey till now just to get an idea of where I came from and where I would like to go.

7/1/18

Started on the front-end portion of the project but I think there was an error with the instructor’s code because (as far as Im aware) I followed the instructions to a T and got this error when booting the react node server: ‘TypeError: Cannot read property ‘apply’ of undefined’

Couldn’t really complete the rest of the project after that but I intend on reading up on the rest of it. I was in the mood to actually code something so I found a simpler Weather App still using openweathermap.org as the data source but it just used node.js and the terminal as output. It was actually much simpler than I thought. Used NPM’s request module for the API calls which made it super simple. Finished it in about 45min. Link to the guide below:

https://codeburst.io/build-a-simple-weather-app-with-node-js-in-just-16-lines-of-code-32261690901d

6/30/18

Started on a weather app that pulls data from openweathermap.org . It uses React for the front end and express.js for the backend. For reference, express is a framework built from node.js. Got about ½ way through, booted up the express server with no probs which is a slight miracle.

Link to project: https://medium.com/@maison.moa/create-a-simple-weather-app-using-node-js-express-and-react-54105094647a

6/29/18

Brushing up on my javascript just as to not get too rusty since Im gearing up to build a weather app for some practice.

6/28/18

Got together with my friend who helped me create Kafster. Went over the build and, on a high level, how it functions. Used MongoDB for the database, basic JS and jQuery for frontend and keystone.js (built on node.js) for the backend.

6/27/18

Finished the Array Filtering lesson. Last filtering method that was taught was the array_column

Array_column = returns the values from a single column of the input, identified by the column_key

6/26/18

Started on the Array Filtering lessons, basically its the same principles of array manipulation as in JS so it’s not that foreign. Recap of the different arrays:

array_filter($array, callback) = Iterates over each value in the array passing them to the callback function. If the callback function returns true, the current value from array is returned into the result array. Array keys are preserved.

array_map(callback, $array) = returns an array containing all the elements of array1 after applying the callback function to each one.

Note: notice how the callback and arrays are switched between Filter and Map, one annoying thing aboug PHP.

6/24/18

Should have coded today but I just transferred my blog post to dev.to , which is one of the more active developer forums. Anyways, I posted it there to get a little exposure and linked back to my personal website.

6/22/18-6/23/18

Finished writing the blog post. Posted here: https://www.bennettdungan.com/2018/06/23/building-my-first-app-the-process/

6/21/18

Decided to start writing a new blog post about my chrome extension that I developed. Im thinking about doing a multi-part series, the first of which will be an overview of how I came up with the idea for the app.

6/20/18

Finished up partials, which in theory is super simple but I actually didn’t realize how much you could delegate to a partials folder besides just like simple <nav> stuff. For example, this is all located within a header.php file that’s referenced in all of the views:

<!doctype html>
<html lang=”en”>
<head>
<meta charset=”utf-8″>
<link rel=”stylesheet” type=”text/css” href=”/public/style.css”>
</head>
<body>
<?php require (‘nav.php’); ?>

It makes sense, I would otherwise have all of that stuff at the top of every single view but its totally logical just to have it in 1 file in case I need to change anything across all Views.

Also, I liked this quote on momentum which has been a recurring theme with me and coding lately:

“Long-term consistency trumps short-term intensity.” Bruce Lee

6/19/18

Had a pretty unproductive day. Just as a personal note, I royalled eff’d my back up again so yesterday and today I was side-tracked with that crap. Going to the PT and putting more effort and attention into my movements than coding. All I really did today was read this coding article:

https://dev.to/victorcassone/the-inner-game-of-self-taught-development-3ie5

I liked how he defined the inner struggles of coding called the Resistance. The idea that passion is somewhat deceiving in the beginning is something I can totally relate to. Here’s the excerpt from the article:

“But passion is short lived. It’s like a sugar rush. The highs are high but there will always be a crash. Maintaining high passion over a long period of time is difficult and draining.

Resistance actually likes passion and will use it against you. You will find yourself saying stuff like, “I don’t feel as passionate as I did yesterday. I should take it easy.” Resistance - 1. You - 0.”

But what the overall message the article was stating is that persistence/consistency are the keys to learning code. Well, actually the key to learning almost anything. Its just about getting a little done every day, slowly making progress without focusing on huge strides in short periods of time. 

6/18/18

Finished that Basics of Object Oriented Programming video. After about ½ way through I started skipping around after I got a good grasp on Classes and Constructors. I might actually write a blog post on those two things just to cement my understanding.

6/17/18

Cemented my understanding of the basic php Class and Constructor function by writing out some code on writephponline.com . Its one thing to follow along a video and hope you gain the concepts but its another thing actually putting the pen down on paper. Sure enough, I made some rookie mistakes that I totally overlooked just judging by the video. Im about ¾ through that OOP PHP video and once I get that done I’ll switch back on over to the PHP Practitioner courses and get those completed.

6/15/18

Ok so today was great. I was having a lot of trouble still understanding ‘classes’ in PHP so I took some time away from the PHP Practitioner lessons and just found a good tutorial on strictly classes. I mainly was having issues with this recurring statement in methods that do this:

$this->var = $var;

I just didn’t know what it meant to be honest, which was a problem this far down the road. It finally clicked after watching this video here: https://www.youtube.com/watch?v=w3XUG6oyINI

Im only about 8min through it but finally figured out what that piece of code does. Wrote down on paper my concepts which I’ll probably upload just for reference.  

6/14/18

Unproductive day. I watched through the Dry Up Your Views lesson which basically explained that any reusable code (eg. nav bar, HTML header/footers) should be put in their own ‘partials’ directory to you can reference the templates in each instance. The benefit is if you want to say change something with the header, you only have to change it in the referenced template file and not have to go through every since file where the nav is located and change it every single time there. I didn’t code this yet in my own project, just watched the video. It was refreshing because I actually understood something fully for once during this tutorial.

6/13/18

Good god, finally through this Routers lesson. While it was insightful, I still do not feel like I have a good grasp on the nitty gritty details involving routers. Ill need to go back and re-do this one but I am so burnt out on this lesson that Im am just happy the code is running correctly. So I think Im ready to move on just to clear my head. Another cool thing is I found out an old friend is actually in the same boat as me and learning to be a programmer while also working her current job. It’ll be helpful to have someone there to empathize with rather than talking to my daily log about my frustrations.

Couple concepts/notes from today:

public static function () {}

The ‘static’ is a global method that can be called at any time.

One thing I don’t understand from this lesson is that he’s saying if you call a ‘new static’ its referencing the class it is in. So essentially calling a new class? 18:05 in Routers lesson for reference.

6/12/18

Learned about a superglobal that spits out server information – $_SERVER. More specifically:

$_SERVER is a PHP super global variable which holds information about headers, paths, and script locations.

https://www.w3schools.com/php/php_superglobals.asp

The instructor suggests referencing methods that do not yet exist. So his process is:

->Write code out first

->See it fail

->Read errors and make it work

6/10/18

Got like 30 seconds through the Routers video again. Im doing this at night so Im tired as hell and not really comprehending what Im watching. Started reading a bit of phptherightway.com just to get some light reading in.

6/8/18

Continued with Routers…again. So I learned that you can have the sidebar of folders/files in Sublime Text which makes it a ton easier for me to look at what Im working with. It helps to have that directory structure alongside what Im coding.

6/7/18

After spending the morning reluctantly watching through this damn Routers lesson, I think things are finally starting to click. Going to sketch-text it out in a way that I understand it (so far).

routes.php -> controllers – > view

routes.php delegates which controller to send the user to depending on the URI (eg. example.com/about will then go to controller/about.php)

Controllers then queries data then generates the required view.php file to display the data

I think I have that right…

6/6/18

Struggling with this Routers lessons still. I think its just poorly explained compared to the rest of the lessons in this course and I feel Im not alone in thinking this as a lot of the comments also reflect this same sentiment. I went along to the next episode just to get my mind a refresher on some different material and he talked about “partials” there, which are essentially templates for reusable code such as nav bars, css, etc. Something I actually already knew for once. Went back and started back on the Controllers episode where I left off.

6/5/18

Restarted the Routers lesson this time coding as I go. I didn’t get entirely far, was googling terminal commands on how to move directories and files (mv) and that led down a rabbit hole of terminal commands. Later this night I felt braindead and I have to be running on all cylinders to follow along with this routers lesson, so I did a bit of digging on additional PHP resources and some general computer science podcasts:

www.phptherightway.com – continuously updated reference guide

www.php-fig.org/psr/ – standards on php programming

see.stanford.edu/ – online computer science basics

programmingpodcasts.com/ – resource for programming podcasts

6/4/18

Holy shit, the “routers” lesson was a hell of roller coaster. It kind of clipped along too fast for my liking but after reading a lot of the comments (which this lesson has had the MOST comment of any) Im not alone in having a hard time with its comprehension. Itm mainly having issues because we’re working with about 6-8 files which all rely on each other, so Im getting lost on what communicates with what.

6/1/18

Controller – an entry point for a route

What is a URI?

URIs identify and URLs locate; however, locators are also identifiers, so every URL is also a URI, but there are URIs which are not URLs.

https://stackoverflow.com/questions/176264/what-is-the-difference-between-a-uri-a-url-and-a-urn/1984225#1984225

5/31/18

Finished the flowchart of the program to date, kinda sucks in Google Draw. I looked up other flowchart programs and found a few good ones or I might just use pencil and paper like a caveman. Started and finished the “Hide Your Passwords” episode, learned about creating a config file to store your connection variables. Also learned about passing in options that can give error reports if something in the connection doesn’t work, it’ll spit out the exact error.

‘database’ => [
‘name’ => ‘mytodo’,
‘username’ => ‘root’,
‘password’ => ‘root’,
‘connection’ => ‘mysql:host=127.0.0.1’,
‘options’ => [
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING
]

5/30/18

Finished up the ‘PDO Refactoring and Collaborators’ lesson. Still confusing as hell, so I started on making a little visual diagram on how all the files interact with each other using Google Draw. That program is a little clunky, might see if there’s anything more geared towards program visualizations. Oh and I started this Daily Coding Log on my website officially!

5/29/18

Didn’t get much done, woke up a little late and had to get Ava ready for the vet in the morning. Came home and tried to fiddle with my WP site but was too tired.

5/28/18

Constructor – a place for a class to declare what its dependencies are

5/27/18

Man the PDO 101 lesson took me forever. Between it being really dull, runnign into basic syntax issues, errors, etc. it took like 4hrs+ just to get through this 15min video. Anyways, what I learned was how to hook up your DB to the frontend (more about that on the previous day) but what was covered today was how to clean that bit up. Basically we took the chunks of code required to hook up the database and put them in their own file called Tasks.php which we then referenced in our index.php file to call those functions when needed. Basically just makes things look a lot cleaner.

5/25/18

Example PHP Data Object (PDO) function for hooking up to a database:

$pdo = new PDO(‘mysql:host=localhost;dbname=testdb’, ‘username’, ‘password’);

This is how you write a statement that basically says “Try this connection and if it doesn’t connect, display the text “Can’t Connect”

try {

$pdo = new PDO(‘mysql:host=localhost;dbname=testdb’, ‘username’, ‘password’);

} catch (PDOexception $e) {

die (‘Can’t Connect’);

}

~~~Starting From Beginning~~~

3/28/18

Git and Github refresher – try.github.io

3/29/18

Finding out Im terrible about navigating the terminal. Trying to quickly get what I need to find my program folder to work in for github but having lots of difficulty.

3/30/18

Successfully made a branch and sent to github.

4/3/18

Looked into Zeke’s intern training documents.

4/4/18

Started on the codecademy Terminal course. Got 15 of those lessons done.

Learned about creating new files/directories, showing dir path, copying files/dirs,

4/5/18

Started on removing prepositions/articles from Keyword Modifier. Went home and finished the job! Also forced lowercase keywords

4/6/18

Finished up the “Manipulation” portion of the Command Line tutorial on Codecademy. Learned more about mv, cp, rm (move, copy, remove). Started reading about Vue

4/10/18

Started the “Redirection” lessons for the command line. This was new territory for me, very useful commands. I’ve listed some new ones below to remember:

The > command takes the standard output of the command on the left, and redirects it to the file on the right.

The cat command outputs the contents of a file to the terminal.

>> takes the standard output of the command on the left and appends (adds) it to the file on the right.

The | takes the standard output of the command on the left, and pipes it as standard input to the command on the right.

the wc command outputs the number of lines, words, and characters

uniq stands for “unique” and filters out adjacent, duplicate lines in a file

grep stands for “global regular expression print”. It searches files for lines that match a pattern and returns the results. It is also case sensitive

4/11/18

Finished the “Redirection” section of the Command Line lesson. Learned this new command:

sed stands for “stream editor”. It accepts standard input and modifies it based on an expression, before displaying it as output data. It is similar to “find and replace”.

Started “Environment” section. Started learning about ‘nano’ which is like the command line’s own text editor of sorts.

~Came to Reve before Software Dev Meetup~

Reading about the Shell/Bash. Good resource: https://www.gnu.org/software/bash/manual/html_node/What-is-Bash_003f.html#What-is-Bash_003f

Shell – a shell is a user interface for access to an operating system’s services. It is named a shell because it is the outermost layer around the operating system kernel.

Bash – Bash is a Unix shell and command language

Bennett’s Notes: So the shell is an inherient “layer” that all OSs have and the Bash is a way to communicate with that Shell (take with a grain of salt)

ASG Meetup: Went over Git and its high level functionality.  I now understand it to work more like a tree. Will take some practice to nail it down.

4/12/18

Kind of cleaned up my learning template. Stopped the Command Line codecademy tutorial after it started going off the rails with some really specific nano/bash stuff. Closed a few “to-read” docs that were cluttering up my space.

4/13/18

Started config of Ngix server. Used Nano in a real edit. Stoked about that since I just learned about it in that codecademy course.

Still needs configuring

4/17/18

Finished the Ngix server setup guide. Then read a little more about the basics of webservers and some of the “beginner” docs from Ngix. Trying to get a better understanding of webservers since I will be sending code to them, knowing how they interpret and utilize that information will be crucial.

Night: Read more about FTPs, downloaded Filezilla. FTP configuration seems easier than I initially thought.

4/18/18

Read more about Ngix on the Beginner’s Guide. Specifically about setting up a static server. Also figured out how to get that Banking app deployed through the terminal

>php banking.php

CRUD app = ‘create, read, update, delete’ type of application

4/19/18

Started reading a guide on how to create a CRUD database app in PHP for Zeke’s Project 1:

https://www.taniarascia.com/create-a-simple-database-app-connecting-to-mysql-with-php/

Also read up a little on PHP basics as I’ve forgotten most of that.

4/20/18

Still attempting to get a local server setup to run php. Running into tons of roadblocks. Going to need some help for sure

4/24/18

Zeke came and attempted to help me out with my nginx server issue. Figured the best thing to do was just a clean install of Homebrew with Nginx. I probably screwed up the config or someshit.

4/25/18

Attempted to merge my branch with master for the Keyword app. I think I did it? Im not sure, started reading more about git and github. Zeke didn’t show so we didn’t re-install things with homebrew

Lunch: Got with Zeke and he helped me setup Nginx to talk with PHP. There’s another Nginx server running somewhere on my computer taking up port 8080 which I think is something I did from that guide I was initially following. On the plus side, the server is running and Im set to start the intern projects.

4/26/18

Didnt get much done in the morning tbh. Writing this at night where I read more into the Project 1 documentation and got zeke to show me a sketch of what the end product will look like.

4/27/18

Got a basic html strucutre for the app started. Finished reading through the CRUD database app guide (skimmed it) to get a brief idea of what/how I will be completing this. Started looking up how to create a drop down in php and how to serve additional files through Nginx besides just the index.php file I have currently.

4/29/18

Created a templates folder using Nano from the terminal to edit files (didnt use Sublime UI!). Created the templates folder to create documents for the header and footer so we can just add those to the pages instead of typing out headers and footers for every page.

4/30/18

Started setting up mysql stuff. Turns out I didn’t have mysql installed on my pc through Homebrew, so I’ve set that up. Learned how to get into the mysql query through the terminal and delete a database. This is where I got hung up because in the guide Im following, i create a test database and then they ask me to delete it but I have no clue how to delete a db. Well, inadvertently learned about deleting a db.

5/1/18

Fought with the mysql database password issue for awhile. Couldn’t figure out how to set it until I went into “Users/Permissions” section in MySQL Workbench. Most guides were showing how to do it through the terminal which was confusing the heck out of me. Next I started the section using PDO (PHP Data Objects) to connect to the database. Just started this but seems fairly straight forward.

5/2/18

Got the init.sql , install.php coded but running into an issue where my install.php code does not recognize the init.sql doc. Not sure if because of page path or what.

5/3/18

Gor the dang thing to work. I had to change the page path to the whole thing starting all the way from /user/ . Pretty sure its because of a nginx congig but oh well, it works. Worked on

5/4/18

Forgot to log this day but I got the UI talking to the database! I didn’t find that out until 5 / 8 (which is today)

5/8/18

Found a great MYSQL document from DigitalOcean on the terminal commands Used that to gain access to the ‘people’ table I have created. Started coding the “Escaping HTML” portion of the guide but ran into some errors.

5/9/18

Brainstormed a new idea about extracting Adwords Conversion information to format to JSON in a downloadable file so you can bulk upload to the GTM. Fixed the Escaping HTML issue where the code was spitting out errors. Started on the drop down.

Night Lesson:

Started Laracast and they’ve been great so far. Here’s a few neat things I’ve picked up:

php -S localhost:1111   – This boots up a local php server to run your code files on

$variables   – how to define a variable

htmlspecialchars();  – function that converts any special html uses to plain html text. Security              measure: http://php.net/manual/en/function.htmlspecialchars.php

5/10/18

Continued with the PHP Laracast lessons. Got through another 2ish videos this time talking about arrays. Found out the issue to the php tag shortcut. I was using <?= as a shortcut for just <?php but its actually a shortcut for ‘<?php echo’ .

5/11/18

Watched the Associative Array video which explains array keys and values. Like this:

$array = [

‘Hair’ => ‘brown’,

‘Age’ => 12

];

Then learned about the function ‘var_dump’ which can be used on arrays to dump the values of the array. Echo wouldn’t work because it looks for a string so we use this function to get the values.

Also learned the die(); function which kills any operation of a code after that is called.

unset(); is a function that can remove a value from an array

5/12 (saturday!)

Finished lesson 9 on Laracast’s ‘PHP Practitioner’ series. Re-learned about ternary operators:

Completed: <?= $task[‘completed’] ? ‘Completed’ : ‘Incomplete’; ?>

Highlighted yellow is the ternary. Basically says ‘if the $task key with value ‘completed’ equals true, then say string ‘Completed’. If false then say ‘Incomplete’.

5/13 (sunday)

Finished lesson 10 about functions. Pretty similar to Javascript functions minus the conditions requiring a $ like in variables.

5/15/18

Kinda got up and going late, back feeling like crap and was tired/poopy so not being the most productive. Anyways, started on PHP Practitioner lesson 11 about MySQL and learned a couple new things along with a refresher.

To login to mysql -> mysql -u root -p

Show databases -> show databases;

Create database -> create database xxxx;

To utilize a database -> use xxxx;

Display tables -> show tables;

To create tables -> create table todos (description //TYPE OF TABLE// text , completed boolean);

5/16/18

Continued the MySQL 101 Lesson. A few new things:

This next command creates a table within your database with a few attributes to it that I will describe below it –>

create table todos (id integer PRIMARY KEY AUTO_INCREMENT, description text NOT NULL , completed boolean);

id integer →  this specifies that each row should be assigned an ID that is a number

PRIMARY KEY -> this gives each item in your row a unique ID that can be referenced (kinda like ID? I need to research more)

AUTO_INCREMENT -> this tells the table to automatically increase the value of the ID each time a new row is added

New command, this one inserts a new row into the table we just created above →

insert into todos (description, completed) values(‘Go to the store’, false);

5/17/18

Started on the ‘Classes’ video and am getting royally confused again about them. I think its because Im coming from Javscript where we don’t really have these kinds of constructs(right word?). I finished the whole video just to get a high level overview of what the class is supposed to do but will definitely need to watch it a few more times before the concept starts to stick. A few notes:

Class – the blueprint for some concept in your application. A tip is to identify the ‘nouns’ in your application.

Method – simply a function that is defined within a class

Object – an instance of a class

5/18/18

I did some digging into wordpress themes for my personal website. Basically just wanted a simple, easy to navigate blog-style theme more than anything. Looked into hosting plans and how to go about doing that deal and think I’ve got it figured out.

5/21/18

Over the weekend (and today, Monday) I got my old website taken down and took hosting of it over from Hunter. Installed a simple WordPress theme that I can easily blog with and that was that! Im still debating on this theme as its pretty damn simple, like barely anything to it although it makes blog posting and navigation a breeze which was my main concerns.

5/22/18

Continued with the “Classes 101” lessons. Definitely having a hard time fully understanding this concept, its a pain in the ass for sure but Im going to keep rewatching this video until I get it. Might even make a blog post about it to re enforce my learning for it.

You can assign a property to an object within a class by using the $this-> syntax

5/23 – 5/24

Had car trouble so didn’t go in the mornings to the cafe both days. But on thursday I did do about an hour at home. Im still having somewhat a hard time wrapping my head around Classes but instead of getting stuck in a rut I wanted to just go to PDO stuff in hopes that new content would just be a refresher as I was getting frustrated.