Get NISE! Remember what should be a get requests

so in the world of routes I sometimes get lost in what should do what so I came up with this silly acronym to help me remember what should be get request:

get NISE

N: new ‘/pigeon/new’

Screen Shot 2015-06-07 at 12.23.06 AM

I: index ‘/pigeons’

Screen Shot 2015-06-07 at 12.22.48 AM

S: show ‘/pigeon/1’

Screen Shot 2015-06-07 at 12.22.14 AM

E: edit ‘/pigeon/1/edit’

Screen Shot 2015-06-07 at 12.23.50 AM

Get NISE!

I hope this helps some people.

I made a App… again!

So I have been working on this really cool idea for a app ever since Tim Holman came to speak to my class. I created a working prototype of my App. What the App does is gets the user latitude and longitude using the geolocator gem.

Screen Shot 2015-06-03 at 3.17.01 PM

After the app has your latitude and longitude it can now use the forecast io api to get the weather from where the user is based on the lat and long.

Screen Shot 2015-06-03 at 3.24.12 PM

This information is in a JSON that the application can now parse for all the goodies needed to give . With those goodies the app can find a relevant picture for a hash that I created with urls of images related to that weather and make a call to the gify api to find a nice gif to boot.

Screen Shot 2015-06-03 at 3.27.59 PM

Then on the rendered html the background is sent to the back and the gify is embedded in day’s description using Tim’s Giflinks.

Screen Shot 2015-06-03 at 11.01.39 AM

Git yo Stuff on Heroku

So I just deployed my first rails project Anime Chase on Heroku and I still am a surprised at how easy it was but I see many have yet to put their awesome projects on Heroku. I decided to write this post to understand the progress a little better of posting apps to heroku and to help my fellow, fellows in the journey of showing off what they worked so hard on last week.

So getting your stuff on Heroku is broken into about 6 steps and it feel very simliar to using git.

1. Sign up for a free Heroku account.

this step is very easy just go to https://www.heroku.com/ and follow the step in signing up for a free account.

Featured image

2. Create your Heroku app

to do this while in app simply enter on the terminal:

heroku create

Screen Shot 2015-04-15 at 8.07.21 PM

this creates your app as a heroku app putting the heroku.

mines looked like this:

heroku create animechase

This is also what your git config file should look like:

Screen Shot 2015-04-15 at 8.38.25 PM

3. Edit the gemfile if need be. This includes add your more lines if you are using the gem sqlite.

Screen Shot 2015-04-15 at 8.07.38 PM

4. Apply the changes if you edited your gem file in any way with typing this into your terminal:

bundle install --without production

Screen Shot 2015-04-15 at 8.08.05 PM

5. Do all of your migrations, rake tasks, git commit and push to heroku master

git push heroku master

♥ heroku run rake db:migrate

Screen Shot 2015-04-15 at 8.06.55 PM

figaro heroku:set -e production

6. Visit your sit by just typing this into the terminal:

heroku open

Things to note:

If you’d like to edit the app on heroku this is the process:

Screen Shot 2015-04-15 at 8.08.19 PM

If you have a free account be careful of going over the database limits at this moment you can only have 10K rows in your database. I personally had to scale down Anime Chase in order to keep it running on heroku.

understand and inform the api key providers, if need be, of where your app is hosted. I know things like facebook’s oauth would not work if you stated your app lived on localhost:3000 but you are making calls on the heroku domain name.

so if you would like more information on the subject matter read these lovely resources below

resources:

http://docs.railsbridge.org/intro-to-rails/deploying_to_heroku

https://github.com/laserlemon/figaro

https://devcenter.heroku.com/articles/getting-started-with-ruby#introduction

Rails Project Day 1: The Birth of Anime Hunt

Featured image

So at Flatiron today we started working on our first week long project in Rails. I was very nervous at the beginning about about the project because we learned rails for maybe two weeks then dove right into the projects. I understand programming and rails, but creating a idea from scratch from methods and arrays; thats still crazy to me!

However, doing my own idea for the project made me feel a lot better about the situation. We are doing a Anime Search program which will search for animes by titles and genres. I always felt as though I was missing out one cool animes that I have not heard of, so I wanted to create a project that would give me recommendations based on genres of anime I would like.

We first modeled the program on how things should flow and work. We learned that the model anime should hold the title description and should have many genres and the genre model should belong to a anime to search by in the future.

FullSizeRender (2)

The first problem we faced in the project was finding a way to gain all of the anime titles with such dated api’s on the inter-webs. Most anime app.s only render xml format to parse. However, after a long search we found a api that is relatively good and renders JSON. We found the Hummingbird api to search animes for our hunt app. Hummingbird takes all of the data from a searched anime on presents them in a readable json format.  This can then be keyed into to create the anime in the database.

# this is the method that all the magic happens

def create

# search_input is the input that the user enters into the search box. the info is than downcased to
@search_input = params[“anime”][“title”].gsub(” “, “-“).downcase

#responce calls on the Unirest which creates a get request to hummingbird version 1 api in which we put the user’s input at the end
@response = Unirest.get “https://hummingbirdv1.p.mashape.com/anime/#{@search_input}”,
headers:{

# this gives the ENV api keys that we needed to sign up for in order to use the hummingbird api
“X-Mashape-Key” => ENV[“HUMM_API_KEY”],

this creates the form as json
“Accept” => “application/json”
}

so then we created a conditional statement that stops if the search turned up a 404 page not found. If the info is found we create a anime in the database then render the show page which shows the page after.
unless @response.headers[:status] == “404 Not Found”
@anime = Anime.create(title: @response.body[“title”],
description: @response.body[“synopsis”],
score: @response.body[“community_rating”],
img_url: @response.body[“cover_image”])
#next i would like to build the genres through the anime here to give them that belongs to table relationship.
render “show”
end

that is it for now until next time the three people that read my blog.

Playing around with Unity 3D… No wait trying to fix Unity

So I started my coding career in the hopes of making a game one day. In my countless search of finding resources to help me in this journey I found  internships that had many elements of game development, workshops that were really expensive but informative, and online game design courses. I found all of these resources very informative, but one of the elements I found the most consecutive beneficial to me was the online resources this is were I learned most of my game development and programming skills before The Flation School. I don’t normally talk about this as much as I would like but I am really appreciative of The Flatiron School for giving me the opportunity learn code because I would either need to have a lot of money to go to bootcamps for coding or had to have been a woman to learn how to code without going into debt in college.  However, because I did a ton of videos without the foundation of programming I had no idea what I was doing so I went back to the code I wrote for some particular games to understand what is going on now that I have a better understanding of coding.

logo (1) n3-1Z5OV_400x400

So this was still relatively difficult because most of my coding with game was in programming languages like C# and GameSalad which uses a cover language to make objective C easier. one of the methods I would like to go over in this blog because there are a ton that I programmed, but I wanted to show one of the coolest I learned and that would be the explode method in C#. This method is a destructive method that can chain on other behaviors. in this game I chose to spawn piece of the player with the explosion. which creates an effect of the player being blown to pieces. So I would like show a demo of this and talk about it alone with it.

However, in the process of trying to get my demo working for class I realized that there was a major problem with unity’s new editor it could not handle translating old projects. I will finish this blog post when I figure out more on the subject

Screen Shot 2015-04-01 at 12.48.26 AM

Am I Brainwashed? A Responce to Seth Godin’s Manifesto

I was fooled. Fooled into being average and thinking that is ok. I have been brainwashed by society. Just because society doesn’t have room for a million Steve Jobs that think differently. If you remember your mother telling you that you are special, but when you go to school you are grouped in generalized and creativity sterilized. Seth Godin’s book, Linchpin: Are You Indispensable talks about the problem of being a individual in a public educational system that is made to have everyone exiting thinking and acting the same.

What does Seth mean by the title brainwashed? Are you brainwashed?

What I understand from Godin’s ideas of being brainwashed is that we have been programed to become cogs in the machine of society and not to be unique.

What is the function of public education?

What I believe public education’s purpose is, is to give every child the common knowledge to function in society. Now, if these students are good enough they go on to college majoring in something that they are interested in and become more of a individual from there. What has happen now is that everyone needs to have a college degree in order to have a typical job so college has turned into another form of public education in which they are standardized and no one is rewarded for being a individual.

What is art?
Is that act of coming to the Flatiron school your art? Or are you looking for us to draw you a map?

I believe art is any product one has put a ton of labor and passion in; something one would like to share with the world. Art can be anything, a well personalized work desk or even one’s code. I feel as though what I have created in this program my art, not the act of coming to the school.

Why are you here?

I am here at the Flatiron School because I want to learn how to program, but I could not afford nor wanted to go through a formal education. I want to be great and creative in the work world and I feel as though I cannot do that at any position besides coding in this day and age.

What is the resistance?
What does failure mean? How is failure at Flatiron different than what you are used to?

My resistance within this program is just learning enough to become a great coder. Failure for me is not being good enough for a particular field. Failure at Flatiron for me would be soul crushing it is something that would make me a dark sadder failure in life. This is why at this moment The Flatiron School is my life at this moment.

A Talk With a Flatiron Alum

I spoke with my Flatiron School mentor on Monday and it was truly an eye opening experience. My mentor’s name is Daniel Spector. He went from working as an accountant to becoming a coder from the Flatiron School.  He now works at Lifebooker, a company which is basically a Groupon for beauty deals. I did not know what to think of a mentor meeting so I was a nerd and created questions for the occasion.

My first question was what was his coding background before Flatiron Daniel had zero coding experience all he did was a little HTML for his job. He did went to a lot of meet ups like the NYC.rb meets ups to learn about coding. He actually off handedly mentioned that he got his job offer from Lifebooker from a connection he met a the meet up, so go to meet ups.

I then proceeded to ask him what were the first could of days like at his job and his response was very eye opening! Apparently, at most junior developer positions you actually are not expected to know anything for the first couple of months. naturally I can understand this from starting new positions in my life but the entry level buffer for positions I been a part of have been around two to three weeks to get on board with the program or get out. In school we learn simply complexity with our one hundred to one thousand line applications. In companies, one would be working with programs with million lines of code and that would take some time to learn and get use to.

At that point in the talk, I asked generally basic questions about his job and the tech field, but I then turned it to a serious topic for a moment and asked him about his experience with diversity in the tech field. naturally I knew the answer. We need more multiracial eyes, thought, and code in tech but I wanted to see what he wold say about the matter. He got a bit more serious and uncomfortable  and talked about sure hoping for a difference because it is needed.

I then asked him about his future aspirations in the world of coding and he answered with the hopes of becoming a senior designer one day and basically told me that I should do the same once I am in a position. He does a lot of side learning outside of the job and basically does this first because one should never stop learning as a programmer, but he also constantly learns because he knows that the more he learns the faster he will reach the goal of being a senior developer. I really resonate with this thought process because this is how a ambitious coder should behave especially if they are a minority in their field.

So then I asked him for advice, he just said don’t freakout. He freaked out a ton coming into the program with no experience freaked out when it came to finding a job and he wish some one told him to not freakout he would get it, he would get a job and etc. so he just told me to not freakout.

I can’t wait to meet with again. I will be meeting him before he heads off to present at Ruby Con in April about Javascript with Ruby.

So…. I know that was not too technical so I will give you my method of the week!!!

This week it goes to… Partiton string method!

The Partition method splits a string into an array based on where you set the argument.

partition(sep) → [head, sep, tail]
partition(regexp) → [head, match, tail]

Searches sep or pattern (regexp) in the string and returns the part before it, the match, and the part after it. If it is not found, returns two empty strings and str.

"hello".partition("l")         #=> ["he", "l", "lo"]
"hello".partition("x")         #=> ["hello", "", ""]
"hello".partition(/.l/)        #=> ["h", "el", "lo"]

Using the Ruby Doc’s from a Developer

Since my Flatiron experience has started I have been learning a ton of ways to be a better programmer. I have learned flow charts from Mykle, I have learned ways to name variables to not have to deal with commenting your code heavily, and just other ways to be a great developer.

I have just finished my third tutoring session with my Technical tutor Joe. We meet every Saturday at 1PM and he dropped some knowledge on me. He has helped me with the labs of Green Grocer, CLI Application,  and Object Oriented -Robot. What I am trying to pick up from him is healthy habits in becoming a effective developer and one of the ways I learned how to become a better developer from him his a effective way to look through the Ruby Documentation. I have always suffered through my dealings with the Ruby Docs and I have been always looking to learned a new way to go through the Docs for my answers.

Methods

He told me about a interesting way of working through the Ruby-Docs. Joe would got through the Ruby Documentations when he has a problem or is looking for a method he would go through the method and without reading the method create a new tab and continue looking for another method that sounds like it could solve his problem based on the sound of it.  Do this for about three to four solutions. Then look through each tab and look to see if any of them would be a good solution. What I enjoy about this process is the fact that you are not going back and forward through the ruby docs and chances are one of those selections would solve your problem not in the most conventional way but it would bring you closer to your solution.

values_at(selector, …) → new_ary

Returns an array containing the elements in self corresponding to the givenselector(s).

The selectors may be either integer indices or ranges.

See also #select.

a = %w{ a b c d e f }
a.values_at(1, 3, 5)          # => ["b", "d", "f"]
a.values_at(1, 3, 5, 7)       # => ["b", "d", "f", nil]
a.values_at(-1, -2, -2, -7)   # => ["f", "e", "e", nil]
a.values_at(4..6, 3...6)      # => ["e", "f", nil, "d", "e", "f"]

I used this process to solve Monday’s Lab of my-delete. What we had to create a couple of method that would delete elements out of a array. so what I did was look through the Ruby Docs and found three possible solutions. my major problem was finding the indexes of the elements I’d like to find in an array so that was my first set and the rest would come easy. I happen upon my last possible solution values_at that took an argument and stores it in an array. now I didn’t want a values in a array but I could work with this data. I was able to take the elements from the array and which were the indexes of the argument I wanted to delete.

In conclusion, learned healthy habits from other developers is a great way to speed up your productivity, teach yourself a little bit better, and just be a all around better programmer. I’ve learned flow charts from Mkyle, short cut keys from Katie along other things and Ruby Docing from Joe.

MindWave Mobile… How does it work?

Featured image

The NeuroSky Mindwave Moblie is an amazing took of technological innovation. A device that could literally read your mind sounds like something straight out of Star Trek. Well to be honest it doesn’t read your mind in the way you think it just takes patterns in your brain and relays them into a digital format. what this equates to is the Mindwave evaluating your Delta, High Gamma, Low Gamma, High Beta, Low Beta, High Alpha, Low Alpha brain waves. This is information, unless one has studied cog sci, is pretty useless however with the these stats together this device can tell the users attention level, relaxation level, and when one is blinking.

Featured image

But how does this madness work? Is this device sending electronic pulses into my brain? Is that safe? And just how does this all work? For the answers I tried looking to the companies webpage, sadly though I only found this chunk of info on how this device works.

Brainwaves are tiny electrical impulses released when a neuron fires in the brain. NeuroSky’s brain-computer interface (BCI) technology works by monitoring these electrical impulses with a forehead sensor. The neural signals are input into our ThinkGear chip, and interpreted with our patented Attention and Meditation algorithms. The measured electrical signals and calculated interpretations are then output as digital messages to the computer, toy, or mobile device, allowing you to see your brainwaves on the screen, or use your brainwaves to affect the device’s behavior.

So basically Brainwaves are electric impulses that are fired by neurons within the brain. The Mindwave monitors this and with a set of code directions shows that information into the screen.

This is incredibly excited to learn about, but the information on NeuroSky’s Mindwave is very scares. I tried looking up scholarly articles, news reports, and videos on the product and there is just not that much to go on. so to think something that you put on your head to play with your brain has no really scholarly is kinda sad. I know one day this will change but for now we are still in new territory and I feel as though that is mostly a good thing. It is a piece of tech that is still finding it way in the world and the developers for this product now can shape the way it is used for the next decade. I have a couple of ideas on interactive experiences that just utilizes the blink decet and the code for creating this dection is open to developers now.

(take a look at the blink decet in this video: https://www.youtube.com/watch?v=1PX9d1QLtWA)

This looks like such a amazing prospect in the tech field, but with great power comes great responsibility. in the near future our brainwave active could be used or looked at without our permission just as Google gives our search information to third party companies to be marketed to. I would feel a great invasion of privacy knowing that if I use this product might brain activity might be given to an unknown entity.  That being said there is no plan I have seen to sell our brainwaves to anyone… just yet, but the conspiracy theorist in me away ways wonders what could be used against me one day.  

That being said, I find the mind-wave a really exciting opportunity due to it’s accessibility to many other devices. Think of what this product can do when pair with your apps, computers, and devices. I am excited to take a step into the future and see what his device can do and the amazing products it could possibly give birth to one day.

Featured image

Hi my name is Hessvacio and I make games

So, I started my journey into coding with the purest of intentions within my youth; I wanted to make video games. Ever since I was a kid playing with my first video game console the Nintendo 64 I wanted to make amazing worlds of my own with programming. As, I have gotten older and have forgotten my dream within the relentless pursuit of a degree and job. Within college, as well, majoring in programming of computer science required one to have a mathematics and philosophy minors in order to complete all while still having to finish within four years so i did what any student would do in the situation pick another major. However, when my degree plans went due to the cost of college making a video game got me back into the pursuit and the amazement of programming again. I started coding for what I wanted to code for not anyone else and I started learning programming more due to it. Nowadays, game development is more of a side hobby as I constantly learn new things about programming from the Flatiron school. I love the fact that game development and the flatiron program lends themselves to each-other in particular portions. Like how I learn pseudo code from coding in GameSalad

Screen Shot 2015-01-30 at 9.28.02 AM

or I used C# for the Tic Tac Toe Game for the pre-entry into Flatiron because I used the language to make games in Unity 3D. I can’t wait to see what Flatiron yield for my passion in making video games for me in the future as I finally learn how to program with such an amazing group.

Here is a Game I have been working on (it barrows a lot of it’s art inspiration and themes from the indie game Limbo) and here is a bit of the creative process on making a level.

Screen Shot 2015-01-30 at 12.19.08 AM

So I start out by drawing out a simple draft of the level I’d like to create on a sketch pad and note some of the themes I’d like to introduce within the level.

Then with some photo editing magic I turn that concept into a level :

Screen Shot 2015-01-30 at 8.59.27 AM

Screen Shot 2015-01-30 at 8.59.57 AM

Screen Shot 2015-01-30 at 9.00.31 AM

Screen Shot 2015-01-30 at 9.00.44 AM

However this is still just a backdrop until I put some colide objects for the player to interact with.

In order to make the game work I stretch-out collision objects and place them where the floors and walls should be:

Screen Shot 2015-01-30 at 12.22.06 AM

After I take the color opacity of these collision objects to 0 which make them invisible:

Screen Shot 2015-01-30 at 12.22.45 AM

now after some coding within the player we can try out the level see what works and what doesn’t

Screen Shot 2015-01-24 at 9.41.55 PM

Like testing out level puzzles, jumps, and many other parts of the game.

I am really excited to gain a better understand of coding to make even better games as I continue with the world of Web Development.