Saturday, December 13, 2014

Winter is Here, Let's Code Something Fun!

Semester is pretty much over. I got antsy and took my database final before the instructor actually assigned it. He assigned that and the last homework assignment really late and I'm not sure why. I didn't read the last section and still got an A on it. I was good with that.

Web server final is still hanging over my head. I should just get it over with so it's not haunting me, but I know it's going to be completely unpleasant.

I started the AJAX course at Treehouse. Yay, getting to that next level stuff. This course has code challenges in it, and it made me notice that I'm getting just a bit rusty on my JavaScript. The challenge was basically plugging in different variables into the previous tutorial, and I spent a good 30 minutes or so wondering why it wouldn't work.

The problem: I hadn't changed my iteration variables in the for loop, so my function wasn't going through the list of data. You know, using i when you should be using j. Oops. A month or so ago I think I might have caught that sooner.

But I'm finally learning about JSON and what it can do to make me look fancy. I just started the videos about using jQuery in AJAX and it looks like it will be interesting. When this course it over, I want to watch Udacity's AJAX course to get another perspective on it and reinforce what I've learned. In the meantime, I want to see how I can work AJAX into a new or existing project of my own. There's that quiz program that Learn Javascript Properly suggests, so this might be the time to work on it during this winter break. If not that, try to make a one page app with an API.

It's probably time for me to learn some vanilla Javascript for DOM manipulation as well. I've been using jQuery all of this time, so when I see a document.getElementById my fingers don't want to type it. I don't know if that will be a weakness in the future, but I should try to get used to the old way of doing things as well.

That's all I've got for now. I'm going to watch a few more videos and get under the covers for a while.

Sunday, November 30, 2014

Sunday After Thanksgiving updates

Not a whole heck of a lot. I've had a week off from school for the holiday and no homework. Finals are coming up, but I've been going through tutorial stuff mostly.

I finally finished Code School's Try Query free course. I took a bunch of notes on it. I learned some new things, like basic traversing. That is going to come in handy for finding elements on a page.

I uploaded my first new bit of code to Github in a while. It was on the multiple to do list problem. I had gotten stuck at getting the name of the list from one part of the page to another. I'd click and nothing happened. I decided to focus on school so I wouldn't fall behind, because I was looking at it too long and scratching my head.

I just (in the last 10 minutes or so just) figured out what I had done wrong. My event handler was a separate event when it should have been nested inside the submit section. I'm kicking myself. I had to look at other people's code before I saw what I was doing. I had the same stuff typed as them, but they had it in a different place from mine. Location, location, location. Man.

Now I can get on with the rest of it and try to make it actually work. After I take my finals. The final for database class isn't posted, unless I have to find it myself. I'm like huh? Maybe I'll get lucky and there isn't a final.


It's time to get in bed.

Sunday, November 23, 2014

Nothing much this past week but low bandwidth issues and putting off homework to watch instructional videos while they started and stopped mysteriously. I also wondered how I used 4GB os bandwidth in as many days when I wasn't watching videos. I don't know if Free Code Camp's chat room ate it up or what, because that's all I did before midnight.  I hate Exede and hope they go out of business so I can find another option. Hope it burns in a fire.

Let's do this rundown.

My last database assignment included one tricky question. Tricky to me. That was the first time I've been sort of confused by something in that course. I wrote my "real world" answer and left it there. The instructor is always good with sending along the solution sheet, so I can see what Oracle was actually asking for.

I looked at next semester's schedule and the pickings were slim. I'm only taking one course, the next database class. The Web Tech list was thin, and there was a class I could take with a $144 book attached to it. I looked at the table of contents. Aside from the responsive design part (which I'm learning), it's mostly the HTML class I took years ago with some CSS thrown in. There was a design principles section, but cynical me wondered how much attention would even get paid to that part. Same lackluster teacher. So no.

A couple of weeks after I sent along my Github account to the teacher and the internship that almost was, my instructor writes me back. The letter read like she didn't pay attention to what I wrote her at all.

She just says "you should do an internship." YES. WE DISCUSSED THIS, REMEMBER?

I wrote back telling her I'd talked to the woman at the career office about my situation and without revealing too much of my business, I said I can't do this right now and that I will let her know when I can manage it. At that point, I'm hope I'm getting experience from somewhere else or attending a different school, but she doesn't need to know that.

She responds with a "Very well." I could hear the dismissive sigh on the other end. This bitch that "teaches" a web server class that consists of feeding students the manual in chunks and nothing involving an actual web server.

What should I do? Tell her I've been massively depressed, live in a remote area, drive a car without working windows that I can't afford to fix if the long drive to the next town messes with its delicate constitution. I don't have a job. I have no support system to speak of.  My connectivity to the outside world is shit and I can't do anything for it. Every day I wonder what the hell I'm doing and if I'm doing it right.

I don't want sympathy. I just want understanding. She's like the jerk who told me to "just" move. I have a real problem with people that tell people to "just" anything, like it's the most obvious thing. Maybe in your Pollyanna world, but it's not that easy for others. Know that, and don't assume a person isn't trying.

That's what went on this past week. Not a lot, mild rage induced. The semester is almost over, and soon I can devote more time to working through Treehouse and the other online instruction that's available.

Saturday, November 15, 2014

It's cold out there!

It feels like a century since I've blogged; it's only been a couple of weeks but it feels like forever. Ugh.

Anyhow, school happened. I took my database midterm and it went pretty well. Easier than I thought. I missed a web server quiz and didn't care that much. Don't give me two weeks without homework assignments because I just go wild! I was mostly doing mturk tasks and getting really bogged down by the cramps. This week I got cramps after the fact (yay!) and part of a head cold. 

The time was peppered with high anxiety and low energy. That's why it felt longer than two weeks.

I saw a tweet about a new online boot camp called Free Code Camp and it caught my eye. The program focuses on JavaScript and teaches the MEAN web stack. Once you learn the tech, you work in teams to create software for nonprofits.So you get curated learning with other people, a portfolio project and help grooming yourself for potential employers. And it's free and you don't have to pack up and move to the coasts where the rent is too damn high.


I read the Free Code Camp blog and learned more about their philosophy, then I sat on it while other issues occupied my time.

Even though this looked exciting and I was shocked by the generosity of the founders (they were former startup folks and decided to go all Prometheus and give fire to the little people), I can barely deal with regular namby-pamby school at the moment and I was nervous about trying to talk shop with other people. If you can't tell, my daily social interactions have been limited since I moved here. On top of that, I'm mostly introverted, a quality that's only increased since I've been stuck in Purgatory. To put it plainly: I don't know how to talk to people any more. 

I was also suffering from the "I don't want to look stupid in front of others" syndrome. The same thing that seemed to plague my networking class earlier in the year. Hardly anyone asked questions, I felt like a dumbass because I started struggling with it halfway through the semester, then after the final everyone I talk to says "I think I failed it" and I'm like "Really? It wasn't that bad!" and wondered why I was so intimidated by some of these ankle biters. After I've already determined I'm too old for this shit and ain't got time for it, it hits me again like it never really left. 

Once I stopped feeling so ill, I signed up before I could think too hard about it. It's similar to the Epicodus site, with videos and instructions, but the program is only about halfway written out at the moment (the advanced challenges are not available yet). In the back of my head I'm screaming "THIS IS SCARY!" but I kept typing and looking and signing up and looking at resources I didn't know existed, and I was in the chat room. Like most chat rooms, people weren't really talking. New Kid Syndrome hit. Lots of syndromes affecting me lately.

People were more friendly, though not too much (can't get hopes up too high) and I threw my two cents into a light tech conversation. I felt like I was in confession; like I was sharing too much. Because I'm a hermit. 

It was just nice to be around other learners. It was just nice to not feel alone. I don't know what everyone's level is, but it feels okay. I am hoping that once I become less self conscious I can do some collabs and maybe share some knowledge while learning from others.

And somehow, someway, I just got a free Treehouse account just now. If my eyes weren't so itchy and watery already, I would cry. I didn't think good things could happen to me any more. It also feels like a big hint from the universe to keep going, no matter how long it takes. I hope this all helps. 

I'm here to learn all the skills, as people say.

Wednesday, October 29, 2014

(GitHub) Branching Out

I created a GitHub branch all by my lonesome. There's an assignment to update the To Do List project on Epicodus, and I wanted to keep things separate because the web page changes significantly. I rewrote the HTML in a copy of the file (so 90s, I know) before I made the branch.

I typed in what my cheat sheet told me to, and checked my account. There's the branch. I kept thinking I would get more files on my hard drive, but nothing was different. I was all confused and thinking something didn't take, but I I opened my HTML files and pasted the new code in and saved it, and checked the status. It changed!

I did my commit, checked everything was okay, then switched to my master branch. Opened the files. Old code is there. Everything's working as it should. I guess! My very first branch was someone else making edits and I just merged it after fixing the button that went wrong. This branch will stay completely separate. Learned more git commands today, back has been patted. Planning out the JS after I get the test out of the way. My mood's been funky and I need to turn up.

Lesson learned here: keep calm and follow the directions.

I need to delete that folder I copied. Old habits die hard.

Sunday, October 26, 2014

Lazy Sunday Coding

I went back to the old pig latin translator code and adjusted to handle sentences. It was in the back of my mind that I should finish that project up properly but I hadn't done so.

I started the revision on a whim, though, so it was rough going for a bit. I was fumbling like I was still not used to coding. That made me uncomfortable. I was starting to panic, with the "this is easy to add, I thought. WHY IS IT SO HARD!?" but I took a breath and went through the steps I needed to take in my head:

turn a sentence into an array with .split()
run the pigLatin function on each word in the array
put the words back together into a sentence with .join()
print it all to the screen

I commented out lines I thought were going to change, changed some variable names and added some new ones to keep things really, really clear, and plenty of reloading the page. I got hung up on trying to use an iteration method to apply the translator, but it wasn't going well and went with a for loop that worked fine. That might be something for another day. I thought that I should add a punctuation stripper to it in case people typed properly, but said nah, tell the user to leave that stuff out.

I didn't time it but it was under an hour. The time went quicker after I started digging myself out of the hole. I'm pleased with how well I handled my code anxiety.

I'm avoiding doing anything that has to be done so badly.I have the next week to to take my database midterm but I'm not in the mood to deal with it. Good thing I can take it three times. I need to review.

Saturday, October 25, 2014

Address Book: Finished and What I Learned From It

Okay, the address book form is complete. Looks good! Here's the Github repo.

Tonight, I went back to try and remove the extra form fields added for extra addresses, emails and phone numbers. The solution was to add a class to the additional fields (I named it 'extra') and add a .remove() method when a contact is added to the contact list. So it resets to one of each line after you add a contact.

Here's the wrap up:

The .each() and .forEach() loops: I had been hemming and hawing over the syntax for this function for a while, but this time it just made sense to use it. I was pushing objects to an array, so .each() was the tool for the job. I had arrays containing multiple objects and I needed to loop through them and do things to them, so .forEach() was the way to get this done.

.each() - Iterates over objects and arrays. It's a jQuery method.
.forEach() - Used to iterate over an array. Vanilla JS method.

Instead of poring over the syntax example and meditating on it until I can get full meaning of it, I just jumped in and used it. I didn't sweat the details and it started to make more sense. It slimmed the code down a little bit as well. I love a good for loop but the new methods look so clean. I hope as I gain experience with more methods my code will tighten up even more.

Getting more used to this: I can use it (correctly, I hope) but I don't always know why. It's honestly one of those "Using this would be handy here" situations. When I do get a chance to use it's more intuitive than anything. It might be because I haven't used it in some complex situation yet, so I can't lose track of what this is referring to.

Sometimes you need a little more class: Adding the 'extra' class helped me manipulate what needed manipulatin'. That's all I can say about it.

Get that little victory and go home: As I was working on this bit of code, I developed some self control and patience. I got something working the way I wanted, I pushed to Github and put it away. No all nighters. I feel like I'm more confident in my abilities and that they'll still be there the next day. I had to get some homework and some other things done, so it sat for multiple days, and that was okay. It also gave me room to unwind and do something unrelated to coding without feeling guilty. That bit of mental health time is important.

The little victories add up. I feel good about things. Hope it lasts when I go back for a possible refactoring.

If you need some good JavaScript practice, head on over to Learn How to Program and get cracking! The founder of Epicodus has been very generous in sharing the bootcamp curriculum for free so that anyone can learn. I'm extremely grateful for it.

Thursday, October 23, 2014

Address Book project update: Progress has been made!

Oh man, this address book code has been fun. In a purely platonic way.

The code can be found at this link: Amy's address-book

First, there was the whole mucking it up and starting over thing, which I talked about before. Then I added buttons to add extra phone numbers and email addresses. I worked the code out fairly quickly. I added a form reset. Looking nice.

Then I noticed that when I showed the contact detail, it wasn't erasing the previous information! Last night, I was getting sleepy way earlier than usual, so I decided not to touch things until I felt alert. Slept on it.

Tonight, I started to get my hands dirty. I used jQuery's empty() method. It cleared the lists, but it left the list markers if the next contact had fewer entries. remove()? Nope. I think "If there was a way I could use an if condition here. That's got to be the way."

Here's the pseudocode I wrote out in my head:

For each li in the unordered list
If the li element is empty, remove it.

Not much to it, but I wasn't sure of what method to use to check for an empty element. I was thinking of plain JS and innerHTML and things like that, so I dug around the jQuery reference and found the html() method. Yay. (eta: I just saw that I used it before but completely forgot about it. Can't beat that 'everything is new' feeling, though)

I tested it out on the phone number fields first before trying to apply it to the entire page. When I finally got it working, I thought "I have to add this loop to every section. I should try to get it to work for the whole contact section. Using this ought to work, right?" So I replaced $('li') with $(this) and placed the each() loop at the end so that it cleans up after the information is replaced. Score!

I'm sort of kind of good with this. I know that it refers to the closest bit of code/function/whatever, but that's it. I can't explain it in a proper technical way yet. It's more of an hunch thing with me right now.

Now the last thing to do is to reset the form to one of each field. I did some good work tonight, and it didn't take as long as I thought! My process has sped up a little and that makes me happy.

Saturday, October 18, 2014

What I've been up to, week ending October 18 2014

I tried Ruby. It felt like I was cheating on Javascript. If this is wrong, I don't want to be right.

I mostly did it to go over some programming fundamentals from a different angle. The simple act of not typing semicolons at the end of lines was just GLORIOUS. Don't worry, I'm back on the JS wagon, but I'd like to keep going with this bit by bit.

It reminds me of when I thought about dropping Japanese and learning Korean instead. That ended up in "No, I've got time served in this. I can piggyback Korean off of Japanese later" (that's the way a lot of polyglots learn multiple languages; they learn the next language from the perspective of the previous one). I see how things are different and somewhat the same, which is interesting to observe. The little bit of Japanese I know is in hibernation though, because computer languages took over, but at some point...I'll know it all. Soon.

That ended creepy.

Today I'm mysteriously awake in the day time. I have taken some of that time to eat breakfast, listen to a self help book about growth mindsets, and banging out some more Epicodus projects. I started the Address Book project the week before, but I had homework and a midterm to take, so it sat on the sidelines. I came back to it last night, got to the second part where I'm supposed to expand it, and completely trashed the thing. I think I was too tired, mostly.

I started from scratch, walking through the first tutorial and explaining what I was doing to myself. It makes more sense than just copying it. It will be easier to get to the next part as long as I don't give myself enough time to forget. I commented the code, marked where my divs end so I don't break the layout again (sigh). It should be fine. I was never going to leave you, JavaScript. It was just an experiment.

About that: when something I had to code myself in JS had a method in Ruby, it tickled me. There might be a framework that does the same thing, but I'm not there yet. But it delighted me to no end that there was a capitalize method just for the first letter of a string.

That's all for now. Blogger doesn't want to save, so I'm copying this down for later if I need to.

Monday, October 6, 2014

countWords is finally a legit web app (heh)

I added a web form to the word counting program tonight. I needed that jquery refresh!

I learned:

How to iterate an array and display it on the page: Stack Overflow helped me on this. I tried a simple loop with .append, .text but I couldn't get it to show more than one item. The SO answer formatted the results and stuffed each result into another array, then pushed them to the screen with the .html() and join() methods. I used paragraph tags so that each result was on its own line. It works, so I'm glad. I also added a reset form button, so that you can look at the original text for a while if you want.

Most of my time was spent getting that part to work properly. The HTML went smoothly, just looking at Bootstrap docs to pick the right buttons. As much as I've done it, I still have to look at it. Ah well, that's what documentation is there for!

This was something that was nagging me and I felt I needed to do.

Of course, my Github repo is here.

The rest of the night will be spent reading and watching fun things. It's getting cold, so I should get used to hanging around the house even more than before.

Sunday, October 5, 2014

Pig Latin (one word at a time) complete and what I learned

I finished my Pig Latin translator for single words a couple of nights ago. I even set up a web page for it this time, something I didn't do in my last project because I was so glad to have code that works. Some things are better put away for a short while.

There's more reading and trying out code examples to do, of course. There's that study group on Google groups I need to look into. The monthly ache has started so it's been hard to sit for too long. This coming week I'll try to get things up to speed again.

There's some videos I downloaded that could use watching. I need to free up hard drive space but I haven't had much focus for coding videos lately, even though they'd probably help. The OOP side of things is something I'll need to understand well. Right now it still seems fuzzy and complicated.

What I learned from this coding project:

  1. Some new methods: I'd read about indexOf() and substring() before but never used them. They really came in handy. I stored indexOf in a variable so I could tell the code where to divide a string, since I had specific rules on where to cut things up. Substring helped me get the other half of the string stored, then I put everything together in the order I wanted. I wanted to use forEach(), but it never happened. I'll try harder next time.
  2. Testing, testing: Unlike the last project writing tests was easy. Thing is the structure really changed after I started writing the code that actually works. The tests gave me a little confidence that I was at least going in the right direction.
  3. Writing things down: After I did tests I went to the notebook and started writing. I'd code a little bit and then when I started to stare at the screen too much I'd go back to the notebook. I revised what I'd written. Just because you whiteboard/write pseudocode doesn't mean it won't change. I started trying to predict what variables I'd need too. Trying to figure out what I need so by the time I go back to the editor, I'm just putting the pieces together. 
  4. Checking string against an array: It's the nested iteration thing again, but I just like how it worked out the way I expected it to. I used this to find out where the first vowel in a word was in order to cut it. 
The next step is to work this out for sentences. I have an idea of what to do, but I wanted to stop for a bit because my homework needed to be done. I'm hoping it will be as easy to expand as I think it should be.

Thursday, October 2, 2014

mid-week learning updates

I started working on the Pig Latin translator project last night and got some basic code to pass some tests. Now that I started working on how to process a word, it got a little more hairy.

I've covered what to do for words with qu (squeal = ealsquay) and words that start with a vowel (and = anday). I have to do the words that start with consonants now. And then figure out how to translate a sentence.

I feel good on my progress tonight, though. I notice when I was switching between the console and Sublime, I got a clue on how to handle the consonants through a mistake. I hadn't updated the code in the file with what I was doing in the console and it was handling words that started with one consonant (like 'soon') like a champ.

I need to pursue this line of thought before I forget it. It doesn't handle words with multiple consonants at the start, so I still need to work out code for them, but I thought it was interesting.

I felt pretty good tonight because I'd made some mturk money (making up for yesterday, even) and still had the evening left.

The hardest part will come when I need to convert sentences. But I'm going to enjoy the fact that I'm plowing through the basic mechanics of this process pretty quickly. I might try to modularize it somehow. I know there's going to be a string array in there somewhere.

I'm going to have to write something out on paper to get me started. But that will be later.

There's still that homework to do! And a midterm in web server class, though I've got a week to before that's due.

Tuesday, September 30, 2014

Well that's odd...

I seem to be understanding databases better than I thought I would.

The basics, at least. We haven't gotten into any actual programming or creation yet, but I'm doing really well on my homework. I didn't think I was getting it that well, because sometimes the questions are vague and there's no answer key to check against. It seems like I'm guessing at times.

But I'm glad. Knowing how a database works will help me in the future if this web development dream of mine comes true. Maybe I should say when it comes true.

I just have a find a place to use the skill. That part I haven't figured out yet.

Back in Columbus, I thought about doing the DBA program so I could get a job, then learn web development on the side, since the program could be finished in about a year. That was when they were on the quarter system. Ohio switched to semesters recently, I think, and I'm not there anymore. Still, it's tempting. Except for taking the certification exam. And I'm a little worried it might suck up my time. It would be good experience for learning back end development, though. From some of the podcasts I've listened to, a lot of developers don't get databases that well. I guess since a lot of them are coming out of coding camps, they only get the basics and don't get enough time for it to sink in.

I think I might take the second course if I find things are going well. I might have to because the course offerings are so thin.

The web server class is a big ugh for me right now. I think it's one of those half a semester courses, too, which irks me because it's full price to read some stuff I could have read on my own for free. I thought there would be videos or a practice server to log into or something. I have a feeling I won't remember any of this. It's a MS web server class, too. North Carolina seems to be big on .NET stuff, which I've been allergic to since my traumatic Visual Basic class a few years ago.

But yep, database class is going well. May it continue that way.

Sunday, September 28, 2014

What I'm up to today/tonight: Productivity, tech talks and learning Javascript (by example)

I got used Pomodoro again to finish up my DBA homework. Finished in under 50 minutes, which was nice.

It's weird that even though I've known about the basics of the technique (work a while and take regular breaks), but it was always a longer period, like 50 minutes and a 10 minute break. I never thought of shortening the interval, I guess because it seemed like cheating. But with the way my brain seems to work lately, the short bursts seem to be much more effective. Time doesn't seem to drag as much as it usually does.

I think I'm going to be using this productivity technique for more things, including my mturk work, because that's so soul-crushingly tedious anyway. Any positive feedback in my life is always appreciated.

I watched Douglas Crockford's talk on Javascript: The Better Parts tonight. I commented on Twitter that even the topics that I'm not familiar with seem at least partially understandable when he explains them. I wish there were more teachers like that. If I had a dollar for every professor that knew the material so well he couldn't break it down for newbs...I would have spent that money on drinks a long time ago.

Now I'm reading through a Javascript text and typing the example code into the console. I learned something new: When you use a constructor with the new keyword, you get an object style format when you call the variable up to take a look at it. For example:

var fruited = new String('apple');
fruited; //String {0: "a", 1: "p", 2: "p", 3: "l", 4: "e", length: 5, [[PrimitiveValue]]: "apple"}

This didn't happen with new Array(); but the other types I tried gave me the curly braces and key:value pairs format like the code above. It drove the "Almost everything is an object in JavaScript" concept in a little deeper for me. Hope to work in a bit more before I get to sleepy to process any more info.

Saturday, September 27, 2014

WhooHoo! Word Counter is fork tender and done.

I finished up the Count Words code after a time of not wanting to touch it. 

The last part of it was sorting object pairs by value and outputting them. I chose to output to the console (I think I'll be able to change it if/when I want to put the code into a web page). 

I've been hemming and hawing over trying to use time efficiently lately, yet procrastinated on reading up on productivity techniques, until tonight. I read about the Pomodoro Technique. It's short, sweet, and, most importantly, free. I set the timer on my phone for 25 minutes and got to work. Made progress. Took a break, did another 25 minutes. Finished ahead of the timer going off. Made fist and said "Yessssssssss".

It really helped. It really, really helped. I've read about Get Things Done and other methods but could never get it started. 

Here's what I learned from this trial coding experience:

  1. When something doesn't work as it should, just throw stuff at it until it does. I found out my function to strip out the punctuation wasn't working when I tried a string with some !!! and ... in it. It would leave one mark behind. After staring at it for a while and bracing for another stoppage, I looked at the documentation for the splice method, and learned to use the extended parameters. It works a lot better. Sometimes I get seized up by the fear of being wrong again, which stops me from trying anything at all. I pushed that fear aside. It's not like anyone's looking. It's me sitting in a chair by myself in my bedroom. Fuck it.
  2. I learned how to sort an object. Since Javascript objects aren't guaranteed to iterate in the same order each time, I had to put each pair into an array. Then they needed to be sorted by the number value. This involved writing a comparison function to to get each word/number pair into ascending order. Then I reversed it so the highest counts were at the top. 
  3. More faith in my ability to work things out. I was panicking for a while there, but I worked my way out of it. I'm just hard-headed.
  4. Writing more modular code. Since I separated some of the processes into separate functions, I have some reusable code that might be useful later. A "remove punctuation" function and a "sort object by value" function. Separately I messed with making some random number functions. I'm going to stick them in a separate folder so I don't lose track of them.
I did break my rule about "When stuck, do something else for a while" in a roundabout way. Instead of jumping on another project on the learnhowtoprogram site, I started reading bits of books and listening to the Javascript Jabber podcast instead. Part of it was to expand my knowledge in the hopes that the answer would come from it, part of it was just wanting a break from staring at code and not knowing what to do next. I spent some of the time doiing mturk tasks for money (which I need) and exercising (which I also need). And part of it doing fun things and trying to talk to people online for brief periods, which I also need even though I felt a little guilty about not doing "real work". 

The countWords code is here if you would like to look at it. I will try to refactor it at some point, but right now I'm glad it's done.

Wednesday, September 24, 2014

Some real talk about life outside of learning to code (and how yucky it is)

I haven't posted in a good while. Regular life has been catching up to me a bit. Family rattling my nerves something fierce. Me just getting sick of it and wanting to hide under the covers. I've been exercising when I couldn't focus on the computer screen. It's fall and it's getting dark early and a little colder. I'm fully expecting a heat wave rebound in the near future. It never lets you off the hook, at least where I live.

I've been reading things, but not a lot of coding has been going on. That past couple of days have made me wish that my Javascript knowledge was at the level needed to demand some money. Meaning, I want away from here so badly.

I've been feeling down. I used up the last of my "worked through a coding problem" juice and I have to find some more. I've been thinking about life off screen more, and it's just depressing. Wondering when things will make sense and life will take a turn. Worrying about money, of course. There's always money to worry about, it seems.

Almost a year after I applied for insurance through, I get a letter in the mail a week and half ago about an appeal. The way it was ran was sloppy at best and in the end, they make me do an application over the phone again. They did this before, and the same result came back as the first time: Tough shit, but you live in a red state that hasn't expanded Medicaid, so stay in that crack you've fallen into." You think they'd know this by looking at my address.

Now I wait for the judge to send a verdict in the mail. Not holding out for the golden letter that says "Hey, we're going to help you out." They can't because they didn't really make it the law of the land, they gave each state a choice, and some decided to not opt in. Granted, Ohio did the same thing and I'd be SOL there as well. I'm glad some people have been helped by the ACA, but I wish it had been applied evenly across the country. There's a lot of people that can't get help out there still. Unless I can find a job somewhere, I remain one of them.

I try to look for jobs that will let me go to school and make enough money to get my mom off my back, but I'm not having much luck. I've increased my mturk earnings somewhat, but I think I'm going to have to sink more hours into it to get what I need to make things a little smoother. But that requires energy and a steady internet connection, something I haven't had since I moved down here.

That plus a dysfunctional relationship with my mother (who I have the bad, bad luck to live with) and a lack of a support system make pursuing this goal of mine difficult. Zero support system except for the pep squad in my mind.  When I'm out of it, they can't cheer.

That's all I have for tonight. Maybe something better will come in the next post.

Wednesday, September 17, 2014

HP restored!

Sometimes it takes some outside intervention to make progress.

I went on my new Twitter account and asked for help with my word counting code. The first person that followed me, Cory, said I should step through the code bit by bit. I was trying to do that, but for whatever reason it wasn't working.

That was two days ago. Tonight I made some significant progress. I'm happy! I have a bug that needs to be worked through. I noticed that if I have some overzealous punctuation, like "???" or "...", the punctuation function doesn't strip all of the marks. With "???" it leaves one "?", and with "..." it leaves "..". I just happened to try this out when I was about ready to stick a fork in this thing, and boom. Fix one thing, find something else to fix.

Overall, I am crazy happy. I am also really happy to be almost done with it. No lingering love for this project. Except for the love of learning *cue thoughtful music*.

Learning moments!

Thursday, September 11, 2014

Chugging along, slowly.

Hitting the JavaScript books again, working my way around this low point. 

I'm going through examples in the book about DOM manipulation and it's in vanilla JavaScript. It feels really clunky, because my other lessons involve using JQuery for the page interaction bits and plain JS for the meat of the code.

It's going to be a long night.

Tuesday, September 9, 2014

Coding lest I forget.

I was planning on getting some homework out of the way Monday night (the internet is throttled again so I have to wait until midnight to upload anything, like homework), but I was really itching to code something. I was feeling a little better and had gotten some sleep, and without the burden of wasting an afternoon going to and from school, I wanted to do code something in spite of those two lingering programming problems I'm having.

Also, I had a scary thought run through my head as I was getting gas.

"You could just stop and forget all of this."

It just came out of the nowhere. I was thinking about when the pump was going to stop and looking forward to drinking my sugary beverage. About if I would be awake for my grandfather's birthday after being down the self-study rabbit hole all damn summer. If my cramps were going to come back tonight or not.

The coding hassles I've had recently were actually in the back of my mind for once. I don't know if saying I gave up on them is the right way to say it, but that it's "That's the way it is and I have to do something else in the meantime". Hitting the search engine only to bring up the same non-helpful stuff each time is not going to help this.

The inner voice thing upset me, to say the least. I don't like having to fight myself. Things have been low, but I don't want another incomplete task on my conscience. It also reminded me of some of the negative things my mom likes to drop on me semi-regularly. Damn, it's like she paid for advertising space inside my head.

On to the programming part.

I went looking for a coding challenge Sunday night and saved it for when I wasn't feeling so sick. It was from Reddit's Daily Programmer challenge, the Easy category, of course. The task was to write a program that would compare two strings and remove any characters that matched both strings. It took a little longer than I thought, because I tried using BDD while I wrote it, and the tests I was making kept failing. I was looking at Chai documentation trying to figure out what to change, but the help is on the sparse side. I'm missing something. I tried looking for a tutorial and they're all to do with Node.js.

I finally thought "forget it I'm just going to write it". After a long late night fangirl session on Twitter (which I needed; people are either not around or gathering into their cliques and I don't feel like I'm invited, so I haven't been trying to chat much lately) I got down to typing and got everything working well. The function works, I just need to throw together some HTML and jQuery for it (or not; I could post it to github as is).

Here's what I learned from it:

  1. Nested iterations. I've done some nested for loops before but it's been a while. It was nice to use it again and really get how it works. I'll be commenting the heck out of the code anyway just so I don't forget.
  2. That splitting a string into a character array counts the spaces and puncuation, too. I just needed to confirm that fact. It brings up another question, though: How to filter out punctuation if you need to. Do you have to loop through it more than once to remove what needs removing? Part of me thinks there's some ultra elegant and clever way to do this that I haven't found yet, but another part of me thinks "that's probably exactly what you have to do". Another coding challenge to take on...
  3. I really have to learn how to use testing frameworks better. Either figure Mocha/Chai out or switch to a different one. There's books on Jasmine so I was considering that.
It was nice to get a challenge done. I'm hoping the more I do, the more it will help me in figuring out the stuff I'm stuck on.

I started reading Javascript: The Good Parts but I took a break. It will be open again when I get up.

It was really fun chatting tonight. That's probably what I'm getting out of this late night study session most of all.

Thursday, September 4, 2014

Get my learning on, every day

I just finished some resistance band exercises, and suffered through a combination foot/ankle cramp. But now I can walk to the computer without wondering if I need to go to the hospital.

I found a nice list of JavaScript learning resources from Jennifer Mann, many of them free, many that have been on my list! It's about time I get to some of them, because I'm treading water so much lately:

I was writing out pseudocode for my latest JavaScript assignment, on paper. It did bring some things to light, and I thought about that Udacity course I took where you were supposed to build a search engine in Python. I think I can do the same thing without resorting to making an array, but I have to figure out how. Since I felt like I've brainstormed enough, I went searching for a similar problem, and found a lot of regular expression stuff and "search text for this particular word" type of thing, but not one that takes the search term out of the text itself. I'm also wondering how to filter out punctuation. But that can come at the end.

This also popped up in the above link in the comments section. I think this might be a listening and reading night instead of a coding night.  I had a crappy day and I need to absorb knowledge. Amy needs to grok like yesterday:

I'd also like to rot my brain on a movie or some television. I just want to be entertained.

Wednesday, September 3, 2014

Is the grass greener on the other side? How web developers look to a broke chick in the country.

There's one thing that I've noticed about web developers that has drawn me in and makes me keep working towards this goal.

They seem like a pretty happy bunch.

The guy that developed JQuery, his Twitter is full of everything but computers stuff. He talks about ukiyo-e (beautiful Japanese woodblock prints) and geeks out on all sorts of nifty stuff. Devs are talking about traveling and eating and drinking with friends. Work's not the only thing, and work's not getting them down.

In my life, I've never known anyone that really loves their jobs. The concept was(still is, really) a foreign one to me. I don't really know people that have a career; they just have a job. It keeps a roof over their head and food in the fridge. I have a college degree, which was supposed to be the way to a "good life", and still all I've had are jobs. I don't even think those four years even register with people when I put it on my resume. I call them "fuck this" jobs because that's what pops into your head eventually when you've been at one long enough. If you get fired or laid off it seems like a relief for a short while, until you realize you need money and the process starts again.

Even though the devs I see don't talk about their salaries, they seem to be comfortable. Their job frees them up to do the things they like. Many of them are eating right and staying in shape. They seem so well-rounded and complete. At the very least they're not worrying about work that much. They have the cash for dual monitors and macbooks and other shiny gadgets.

Some of it might be work hard, play hard and they're not airing the rough parts very much, but to me it seems like they're living a dream, or my favorite metaphor, I'm looking up at heaven from Purgatory and longing to be there.

The devs that work at an office are forever talking about beer in the fridge, and food being catered in. This might be because they work long hours and the incentives are so they don't leave, but wow. I've read other people's day in the life accounts and they start fairly late, with lots of mental health breaks, reading RSS feeds and email checking. They get to dress causally. There's telecommute options. Even if the hours are a little long, it seems a nice way to spend a day.

They're always getting job offers. It's like they're living on another planet. We're in a recession and these people are job hopping without anyone raising an eyebrow. Hell, they're expected to go for the gold. Even the freelancers seem to not lack for work. They're always hustling for it, but they seem to have plenty of clients to choose from.

I want to be like that. Happy, doing stimulating work, having money to support myself and have some fun, pursue my other interests and not dread going to work. That's what I want for myself. That is why I want to become a web developer.

Improvments and need for improvement

I found a really fun way to learn CSS selectors.

CSS Diner - Where we feast on CSS selectors!

The graphics are cute, the print is nice and large and it's fun. I went through it last night after a long night of trying to code and not getting very far. I think if I work through it multiple times the some of it will stick.

I'm trying to look back at myself and see if there has been any progress. I guess there is but I can't quantify it very well.

  1. I'm getting better at breaking down a problem into smaller, simpler parts that I can apply my limited skillset to. Not perfect, but it's getting better. 
  2. My "stuck" periods are getting a little shorter, but it's still painful. It could be dumb luck, but I've noticed it and hoping that it means I'm working a little more efficiently.
  3. I finally worked out the nested if statements. 
  4. I'm better at knowing where to stick a return statement in a function and why I need it.
  5. I can link a script to a web page better than before. It's mostly grabbing ID tags, but I'm doing it. 
  6. JQuery - I'm actually using it. 
  7. I stopped using ++ as an increment.
  8. I'm using CSS frameworks to speed the process up, even though it's a little boring. I'm event customizing Bootstrap a little bit.
  9. I'm getting better at looking through Stack Overflow without getting overwhelmed.
  10. My debugging skills are improving.
  11. Decrements when working with arrays are my new friends!
 There's some things that I want to work on in the short term, of course:

  • Memorize some JS/JQuery methods so I don't have to refer to a reference as much.
    • I want to learn the details of the string and array methods, esp which array methods change array length, because that trips me up and I have to read something and come back to my work.
    • I want to get string and array processing methods down.
  • Memorize some text editor shortcuts. I want to use the mouse less,but so far the only thing I can do by heart is comment out code.
  • Whiteboarding. When I write up HTML I tend to have to stick an ID somewhere after I think I'm done, or remove one that I thought I needed. I want to be able to plan out what I need ahead of time to reduce the back and forth and possible errors this could cause.
  • I want to use a while loop for something so I get used to it. The coin problem code I found used a while loop, and I realized I haven't used it for anything.
  • Write better pseudocode. When I was at CSCC, my teacher said you should write your pseudocode out before you even open your code editor. I've recently gotten back into the habit, but I want to be able to at least get some of my actual code from it.
  • Understand OOP and MVC. These night not happen for a while, but I know I need to grok these fully so I can make a living.
  • Be able to explain web dev concepts out loud. I will need this skill to get through interviews. I need to learn the lingo.
  • Get some projects up on my free hosting page. I've been working so hard on the projects that I haven't done the site to show them on yet! I was planning a redo of the class project I did, but I'm thinking total overhaul is the order of the day.
  • Make some connections online. I need all the help I can get.
That's my short list. They're about even, which makes me happy. 

Getting a taste of success from another plate, and school ain't what it used to be.

I've been in full "I suck" mode this past week or so, but I recognized it and knew I had to do something to break up my funk a little bit so I don't give up.

I decided to jump up to the next project in the list to see if I could code other things and let the problem code simmer in the back of my mind. I'm hoping by doing this I get a breakthrough at some point. Maybe I'll learn something I can take back to the previous problem. Also, I don't want to get stuck on one thing and stall, like the address book problem I had at the start of the summer.

Anagram checker works for comparing two words. I need to get it working for a string of words like the initial problem stated. I started the project this way, but it wasn't going well, so I've counted the two word problem as a success, even if it's a small one. I was trying to go to CodeWars to do something, but when I log in the challenges won't start up when I click on them.

I went to the coin change problem, making change with the fewest amount of coins. I'm still trying to figure out how to drop through the different coins. It's to the point where I have the code show a message "You have X cents left over" after it wears out the quarters. 

I found a very elegant solution to the problem online, but until I understand it, I want to try to solve this with my own beginner crappy coding powers that I CAN understand. I'm using quarters, dimes, nickels and pennies. No 50 cent pieces because they don't come up much any more. Stuck again, wanted to cry but didn't get a headache. Moving on.

I saw a code challenge that involved reversing a string with the words in place, so the sentence comes out with the same order but the words are backwards. I took a deep breath and started simple with one word, went to bed. Just finished it tonight. Finally, I got something to work!

What I learned from that project: when you push to an empty array, you don't have to reassign it again, just array.push(). It throws up a console error if you try myarray = myarray.push(). 

I didn't run tests on it though. I could've, I should've for practice, but at this point I just wanted a victory. I have to make a page and link the code to it, but it can be done later. I just want to bask in this a while.

And I have to do my homework for the week. I at least got a quiz done in my database class today, but I need to get my web server reading done and take the test for it. I want all of it done by the end of the week so I can code over the weekend without anything hanging over my head.

I want to work ahead but javascript is running my life a little too much. I freaking dreamt about the problem I was working on last night. It didn't give me a freaking answer but I sure as heck dreamt about it.

I don't know if that's good or if I should take a break.

I don't know if  I'll continue the twice weekly run to school thing. The computer lab is small and kind of  awful. The keyboard tray sets too low and I have to back up my chair to type. The networking room has nice PCs but the door is locked if there's not a class. It's not worth the fuel.

I've only seen one guy from my networking class, and he sat in the back and I never talked to him. It's not a friendly place at all. I think I'll take my chances at home.

I'll go Thursday and see how I feel after that. I'll have to structure my time and hope my internet cap isn't reached so I can upload my homework during the day, because one teacher wants the stuff in her inbox by 5pm, meaning I have to get stuff done the night before to be on the safe side.

But hey, I got the code to work. That's all I'm giving fucks about tonight.

Sunday, August 31, 2014

I ate something, I tried to hang out and get my mind off of coding. I kept slipping up and forcing myself to not think about it, which made me more irritable.

I came home, did about 20 minutes of guided meditation (which I'd been slacking on badly) instead of the usual 10 and my headache finally started to subside. Then after listening to some audiobook I got back in front of the computer again.

I got the code working as far as comparing two words to see if they match up. That's something. I had forgotten about splitting a string up by character and sticking it in an array. It's not something I'd used much in the past couple of months. All the exercises I've done had been with math. Note to self: do more string manipulation  exercises so this torture doesn't happen again.

Baby steps, dammit.

Saturday, August 30, 2014

I started planning out this anagram code and after I got my tests to pass, I rewrote the code. Over two hours later I'm back at square one because it doesn't grab all the matches.

I wish this would quit happening, my inability to think through a problem in a decent amount of time. I don't know how long I should be taking on these things, but it seems like it's too long. I'm either making things hard on myself for something else is wrong.

I don't know which it is. Maybe I didn't eat enough and it's causing the headache I have. I really don't know.

I thought I was making good progress at the start, too, with the tests coming out okay. I thought I just had to refactor around the two basic concepts, the length of two words and the letters contained in those two words all matching. But it went horribly wrong.

I think I need to get out of pain and come back when I feel better. The thing I worry about is that a company doesn't care how you feel and just wants the work done. I need to do this stuff like breathing if I expect to get work, don't I?

I don't know. I just don't know.

Friday, August 29, 2014

The site Creative Bloq had a couple of interesting articles up that I wanted to look at later.

5 ways to be a better frontend web developer

This article listed some useful sites and things to keep in mind. I looked at the Bourbon site and it made me interested in learning more about SASS. The Refills look really handy. 

Plus I love their icons. I'm such a shallow person for being impressed by looks!

I have not studied mobile-specific development yet, but I know it's going to be a thing if I want to do this for a living. I mention this article because it mentions things I want to know how to implement, like making a phone widget that lets you use the app that way instead of launching from an icon.

Taking a chill pill tonight.

Got my homework done for the week and now I'm trying to learn some new CSS and solidify what I already know.

I reviewed some selectors I haven't used very often, like descendant, adjacent and first-child, so that was a nice refresher. I've only used those once in my web page class, but that stylesheet was insanely busy, mostly because I was doing it from scratch, going back and throwing in another class or id when I needed it.

It's going to be a quiet night. There's the anagram coding assignment I could be working on, but I think my head needs a little break. I need to get all 3 of the web development foundations down, and this is a chance to level up an area I've been neglecting. And one that I really like. I really want to be able to style a page from scratch and mostly memory before I start on LESS or SASS.

So everything doesn't look Bootstrap-fabulous.

Plus with that knowledge maybe I can tweak Bootstrap or whatever framework I get into more.

Thursday, August 28, 2014

I got my Title Case generator to work, passing all the tests i could think of. Looking back on it, it was easy, but I was too tired to process the solution for a couple of days after I found it.

I found the answer Sunday night or Monday morning, don't remember. Emailed it to myself just to be safe.

Had it sitting in front of me and my brain went "NO! I'm not trying to wrap my head around this right now! I want a rest!"

This is probably the second time I found something on Stack Overflow I could use (the first time was what BootStrap CSS rules to edit when customizing the buttons, which I copy/pasted with glee).

I thought I was going to have to find the right reference that told me what each property did in detail, probably Javascript the Definitive Guide or something similar, and I was going to have to toy with the code till it worked. I figured it was the shift method I was using, but wasn't sure how I fix the issue. I got lucky and worded my search just right and got my answer:

Just decrement the counter variable in the body of your for loop.

Really? I thought I was going to have to write the loop backwards, but no, just add i-=1 after what needs doing. And it works. The shift method was my problem.

I felt so good after that, you don't understand. Once that was done I handled the mixed case and call caps test in the blink of an eye (toLowerCase, bitches) and the resetting of the form field after each use (because it wasn't and I wanted it to).

I had a fever yesterday so I haven't messed with code since Tuesday. I will pick it up tonight, after I read up about these web servers and such.

I can also say I use +=/-= because "Crockford does it" and mean it. I saw it in a presentation of his. I'll miss you, ++ and --. I wish all bad habits were so easy to break.

Tuesday, August 26, 2014

Off to a good start! *crazy laugh*

Working on the Title Case project, and one day I got the first test to pass, then the next day the second test broke the first test. I messed with it for two days. I started over with a clean slate and my loop only went through part of the sentence.

I found out that the length of the array I stuck the sentence into was changing every time I got to the top of the loop. So, I need to confirm which methods change the length and which don't, then code accordingly.

After a day of trying to start over with this, again, I finally got a single word going to title case again. This time without converting to an array. So I will use that for the first part of a conditional branch, so I'm not doing anything I don't have to, like switching to an array and back to a string for one word.

Hopefully that works. I was late on a homework assignment for database class because this weekend was sleeping and javascript, and they had me sitting around waiting for my online course access login until the day before the junk was due. I'm not sure why they can't put the stuff up the week before class starts, so you can at least look at the stuff. Otherwise I'd be ahead or just where I need to be. It does look like it's an SQL course, so that's good.

Whatever. I'm going to school tomorrow and will try to do as much of the next assignment as I can. Hopefully I get it done and work on other things. I'll have something to do this time, unlike last week where it was trying to find stuff on Blackboard (I don't remember Bb being so..unorganized) and doing my own thing.

Start this semester right!

Sunday, August 24, 2014

Testing Stress, Come On!

I started on the next BDD problem, the queen attack, and got stuck. I found the math I needed for the problem, but my tests only passed with weird examples.It always expects false, so if you write a true statement you have to put a false example in to get it to pass. Or something. I'm writing from memory here.

It ended up working, but not in the way I wanted it to work. I wanted to specify the type of attack, but it wasn't letting me. I probably just needed to hide some text and show it to get what I want, but I was exasperated and tired by the time I got to the actual web page. I'll try it again at some other point.

I'm not sure what I'm doing wrong. The example given had a lot of true statements in it and ran fine. I need find find some reference material to help me, I think.

I decided to put that aside and did the triangle problem. Put in three lengths and see what you get. This one only worked right if you put the oddball case as the first conditional. A triangle is not viable if one side is longer than the length of the other two sides combined. I had this at the end and it wasn't catching it (it was marking them as isosceles for some reason), so I made it the first if instead of the last. It works fine now.

Testing, amirite?

I do see where it helps, but when you do something non intuitive to get the test to pass like I mentioned above, it makes me feel uneasy. I don't know if I'm taking advantage of some bug in the framework or if that's what's really supposed to happen. It could be a syntax thing. It wasn't explained in the tutorial, so I might find just what I need in the documentation. I found some testing articles to drill through, preferably with a tasty cup of coffee.

The blog title was inspired by this video. No, they are not being serious. Yes it has English subtitles. It's parody for a TV show. Fake group, like Spinal Tap ultra lite:

Bless all the little boybands, bless them.

Friday, August 22, 2014

I decided to get some sleep. Well, my body did.

It turned out to be a good thing, because I just finished my first test driven development project!

I worked on the leap year calculator on Epicodus. I watched the video again, and wrote out the specs that were given. Then I had to add an extra condition and fix a display bug.

I chained together some jquery methods without looking at the documentation! I had it pulled up, but then I said "eh, let's try this" and it worked! The code still passes the tests after that as well.

Here's the code:

I'm adding more steps to my process, but I feel good about it. It's how the professionals get things done. Not code springing fully formed like Athena coming out of Zeus' skull, but bit by bit. I need to do more. And possibly read some documentation.

And do my class readings.


Thursday, August 21, 2014

Inertia, scattered

It's 4:30 in the afternoon and I don't want to do computer things.

I probably should. I didn't get a lot done at school except for download a bunch of class materials to read later (I'm not wasting my stingy home bandwidth on it) and I found a tiny, extra simple code challenge to do. I read part of an article on best practices, and watched an Epicodus video on test driven development. I'm going to have to watch it again, I know, and learn how to run the testing software and write specs properly. It's the stuff I've had a hard time finding online in a form my baby brain can understand. And it's video. I'm glad I found the site when I did.

It's too hot to drive into town in my AC-less sealed up greehouse on wheels. I've been pretty scattered all day, despite having the best night's sleep I've had all summer last night. I'm not in school mode yet, I guess. I feel like I could drink a few energy drinks and still not have focus. I just want to space out on TV and listen to audio books. For a few months.

My brain tells me to just do something, but my body doesn't move. It's one of those damn days. Again.

Sunday, August 17, 2014

One of those damn coding days again

I was tired, but not that tired. I'm going through the sleep cycle reset thing before school starts, so I've been awake a little longer than I have been. Figured I would use the daylight wisely and working some jquery/js practice. I said "dammit, Imma gonna work some nested ifs into this and finally understand them today, dag nabbit!" (I only talk like Yosemite Sam when I haven't slept in a while, and then only in my head).

I sit down to do this branching decision thing from Epicodus. Of course crap doesn't work like I think it's going to, so I start over with clean files. I write down what I want to do, and in what order:

  1. Get the content on the page;
  2. Make it functional
  3. Make it look good ONLY after the page is functional
Since I'm the kind of person that will spend way too much time trying to get the layout to look right (which I did with the files I scrapped) I decided to leave that alone because it's not the most important thing. Even though I'm using Bootstrap still, there's a lot of classes I haven't memorized, and looking through the docs takes a decent chunk of time to make something look so obviously like Bootstrap. You know that look.

Anyhow, I thought I had the age comparison I was doing down. I've done it before and never had a problem:

  • age <= 20;
  • 21<=age<=40; (age is greater than  or equal to 21 but less than or equal to 40; 21-40 range)
  • age>=41
I'd done the age range thing before without a hitch, but it didn't work here. I never got to my third branch. Better than things not displaying at all, but still. I spent long time messing with this. I stuck alerts in to see where I got stuck (which was good debugging practice, but AAAAH!), I turned the operators around and they semi-worked, then broke again. I was getting that "I'm an idiot" record playing in my head again. I thought my cache doing something, but I cleared it and when the developer tools are up the cache is disabled. I was doing a lot of staring at computer, flopping on the bed to mull things over.

Finally, something in my head said "maybe if you split it with &&". So I typed:

(age >= 20 && age <=40)

And the damn thing worked. I don't know why, and if someone sees that they're going to ask me why I didn't write it the shorthand way, and I'm not going to be able to explain it. I have no clue what's wrong. I'm probably going to be scared to write these comparisons out the usual way ever again. 

People are going to think I'm dumb. This is the path my head likes to follow. I don't know if it's fatigue or just generally being in an iffy mood. But why can't things do what they're supposed to?

But somehow, through all this crap, I nested multiple if branches properly. I've been trying to figure out how people do that like it's nothing for months, and it happened just now. I'll probably completely forget all this in the morning (or whenever I wake up) but I did it. 

It went three deep, which seems like it could be too much, but I've seen a couple of tutorials do this code version of nesting dolls and it's always been hard to follow. I've tried to explain it to myself through comments and I always struggle when I get back to it. But I did one!

I wish I could share my joy with someone, but thems the breaks.

Time to rest. The hard part of that project is done.

Well, school starts Monday. 

Yeah, about that...I need to find a new one. I'm sure I mentioned it before, but it needs to be high on the list of things to do the next four months or so.

I just read an upsetting story about how this place I go to suspended a student for saying something critical about them online. I knew the place was a dump but it's a sensitive dump too. Overly so. That plus budget cuts means I need to move on. I'm not going there out of the goodness of my heart. Read some other stories about another NC community college that made me sad, and this one was in the "big city".

Figures I'd be in a state that is one of the worst when it comes to paying teachers. This state doesn't seem conducive to learning unless you're rich. It's a black hole, a big, empty hole. Can't even find a decent library or bookstore in the general area (which means driving to multiple towns, because it's the country). The bookstore in town is full of old books. I love old books, but it's not suiting my needs right now.

I don't think I've mentioned the place by name yet. I did a search, nothing came up. If I did, screw it. It's not like it's a privilege to attend the place anyway. 

What I'm hoping is that I can find another place to take online classes from, and if it's a state CC, see if I can use the school computer lab in town when I need better internet service through some sort of inter-school agreement. They're both state schools right?

I bet I'll ask about that and the staff will scratch their heads like no one's ever, ever mentioned the idea before. Just like taking English composition and literature didn't count as English composition, and the web dev instructor had no idea of any web dev opportunities in the area. 


The sun's coming up, I'm awake, so I'm going to go and get something to eat. I found a ten in my wallet that I've been carting around for months. It's begging to be broken. 

Much like my will.

Friday, August 15, 2014

Just enough jquery to be dangerous

The past couple of weeks, Bootstrap and jquery have been my life. My computer life, anyway.

While going through the Epicodus lessons I have gotten the jquery refresher I needed. The lessons have been really practical, which I am appreciating. I don't want to do anything fancy, just add interactivity.

I was inspired to go back to my idea of a task list web page that's been getting dusty because I hadn't learned any basic DOM manipulation yet. I got that little bit of jquery and ran with it. I opened the files up yesterday and stared at them for a bit and then started revamping the thing. I replaced the stylesheet with Bootstrap, which gave me the basic look I wanted a lot faster. I was looking at my old .css file and thinking "Look at all this!" It seems so long and unnecessarily fiddly now. Not that the bootstrap css isn't, but I only had to pull a few class names out of it to get things the way I wanted it AND it's responsive. I did some style overrides in my own stylesheet to get the colors I wanted. That's all I'm going to do for now. I wanted to work on the functionality.

It took me two nights, tonight included to get the input from the form into the list area. I have the input saved as a variable, I needed to figure out that I could concatenate the html tag I was adding with the variable so the text actually shows up. So instead of:


I type:

.append('<tag>' + inputVariable + '</tag>');

I feel pretty good about it.

I forgot how to use GitHub because I had nothing worth pushing. But I jogged my memory with this handy site:

git - the simple guide

That's all I'm going to do on that project for now. I need to soak up some more lessons. Stuff is starting to click now bit by bit. My days in The Dip are numbered, I hope.

ETA: Shortly after writing this I learned yet ANOTHER handy method and even figured out a functionality problem on my own! On fiyah I am! It's about as happy as I can get right now.

Friday, August 8, 2014

I worked out a lot today

I think I did about an hour of exercise today. I did a 25 minute belly dance video that I found on youtube, and at the end I was feeling pretty warm and limber. I thought, "I could do some more. Oh yeah, gotta do my resistance training." so I did this lovely FitnessBlender 16 minute bicep and tricep workout:

Bicep & Tricep Super Set Workout - Resistance Band Exercises

I slacked on this (I think I missed two days in a row for no good reason) so I was feeling it. Finally I did some low impact cardio until I thought I was getting ready to wear out. Then I did some stretches and that was it.

I haven't worked out that long since I wanted to learn a kpop dance a couple of years ago, when I first moved to NC. I lost a lot of weight that month because it was fun and I was determined (and literally didn't have anything else to do). That was in the creepy old house with the snake in it. I was looking for a new dance to learn but never found one. Instead I learned bits and pieces of choreo.

Since then, I've lived in places with less and less floor space and privacy. I'm not the kind of person to learn a dance in front of people, especially judgy family members. That and I'm not that comfortable jumping, because I feel like a lead weight. I used to do that stuff often, and I want to get back to not being so damned self-conscious.

I was working out because I could not concentrate on computer stuff. I decided at some point if I can't concentrate on one thing I need to switch it up and do something else to use my time effectively. When I first moved to NC, I thought that I could use the isolation to go convent style and structure my day with studying. But I was too depressed.

These days, I'm still out of it but I think "Well, fuck, I don't have anything else to do. I can't sleep 24 hours a day. I need to use this time to better myself like I promised!" So bit by bit, I think I'm doing it. I just hope some bombshell doesn't fall out of the sky to interrupt me just when I'm getting in the habit. It's happened before and I've lost a good bit of precious time.

Just so you don't think it was something petty, the first big interruption was my dad's cancer diagnosis. I had been working out for about a month and feeling better, even though I wasn't seeing any changes, but that sucked the life out of me. Moving here was another. There's a few more, but I've shared enough, I think.

I need to put an hour in at Gym Bedroom regularly.

I am afraid I'm going to be screaming in pain when I get up, but eh. I need fitness, darnit.

Currently messing with Bootstrap again. I got an email that my free hosting needed to be renewed, and I thought that I would download my school project site and redo with Bootstrap. I'm watching a Youtube video to try to get some shortcuts on the classes I need to get things looking the way I want. It's a two column layout with a header, and so far I have rearranged the nav bar, the header is a jumbotron and I have the two columns, but it's still mad ugly. I skipped the col-xs on the page because on a phone that's just going to be too teeny, and the stackup doesn't look bad in that case.

I'm watching/listening to the video in the hopes of getting some of the info I need a little quicker. I've gotten some good tips already. Later on, it's back to JS and all the fun it contains.

Saturday, August 2, 2014

Remodeling a page

I've been looking over an old HTML file I wrote for practice sometime last year.

It had a serious case of divitis, so I was taking those out. The old style sheet was really busy, too, so I'm starting over. It's not centered or anything yet, but it looks nice.

I'm writing my own stylesheet first, then I'm going to apply Bootstrap to it and play around with that.

It's nice to be able to revisit something and not be completely bored out of your mind with it.

Get money.

I looked at my bank account and cried a little bit this week. I'm trying to think of ways to get more cash to fund my Get Out of Dodge (G.O.D) operation.

Because writing on mturk ain't cutting it and the stuff I see on Textbroker makes me scratch my head, meaning the directions are convoluted. It must be people trying to game the SEO system still. I was hoping there would be less bs there than on mturk, but it doesn't look like it. I'll dig into again soon. Maybe I'm not searching the right way.

Back to the subject.

I'd read somewhere that doing PSD to HTML conversion is a good way to make side money. I'm thinking if I can get my CSS skills up to snuff I can try to do that as freelance work. Then I can afford new equipment and educational resources, as well as not making buying a sandwich at the grocery store a monumental decision and making country living a smidge more bearable comfortable.

I've forgotten what treating myself is like. I buy a sugary beverage (read: large soda or occasional coffee drink) and I agonize over it. Because I have to do mturk tasks for chump change, a LOT of them, to cover it. I want to be able to buy new clothes when I need them. Hell, I want to be able to buy gas. I see people on Twitter talking about all the retail therapy they're doing and I want to tear my hair out. They're stuck in a damn rut, too, but at least they have money.

I want to maybe save up enough to buy out this shitty Exede internet contract and get some non-sucky internet service in this house. Or at least buy an extra (overpriced as hell) gig of bandwidth if I'm in a bind. And a laptop stand and an external keyboard. Maybe even a MECHANICAL keyboard! Maybe get a donut with my freakin' coffee. A donut.

My idea of luxury is so low level. I want to jump off of something some days. Many days.

But that seems to be something to aim for. Learn how to accurately slice images, make a command cheatsheet, and rebuild everything on the browser. It would also be work experience. I don't know how much it's going to take to get my CSS skills past amateur level, so I don't have to look everything up, but I'm hoping by the end of the year I can find a gig.

And go from there.