Showing posts with label web-based. Show all posts
Showing posts with label web-based. Show all posts

Sunday, June 22, 2014

Commenting in JavaScript



You're probably wondering why I chose this topic to write about, but it's funny how people get commenting so wrong while programming. Instead of explaining what or why their code does something, they give you a statement and expect you to figure out their code all on your own. That's wrong, isn't it? I mean, of course you're expected to analyze their code and find out what it does exactly, but when it comes to participating in huge projects, giving you an idea is a necessity - that's called working together.

Good Commenting



After a few times of doing it, you probably assumed that you got commenting down like a boss. And to be honest, I really don't blame you. All it requires is just a short summary of what that line of code (or block of code) does in your program. But it's how you explain it. Some people believe that they need to explain to the extreme just for you to understand what they had written, but that's not really the case. All you need is a nice, short sentence. Especially if someone knows how to program JavaScript. If someone didn't know however, that would be a different story (nosy buzzers).






Take a look at the picture above. The comment is short, clean and responsible for it's purpose. I didn't have to make multiple comments just to explain what my function does, because it honestly doesn't require that much explaining. Just summarizing it turned out to be efficient enough. Tips I advise are:


  1. Explain as if you're telling someone your dream, only shorter.
  2. Keep it short so that it won't flood the file with your multiple lines of comments.
  3. Don't let your comment stretch out in the file so that people have to use the scroll bar to read it. 
  4. Beautify your comments if necessary.
  5. Always put your comments ABOVE your code. Never underneath it.
This isn't really something I expect for you to stress out over. In fact, it's not even necessary to. Commenting should be fun and powerful at the same time - you just have to do it right. But if you're doing it wrong and nobody understands a single line of your code (especially if it's complex), then you might want to erase what you created or either find another way to explain it correctly. 
Forever Alone with Code

As a short conclusion, don't write a block of code if you can't explain it. Not worth it.


Bad Commenting

Really?!

Sometimes programmers explain what their code does to the point that they're literally teaching you how to program for the first time. That's too far. That's like teaching a forty year old woman how to say a simple English greeting that she probably already knew..
Now, I'm not saying that all of us are smart when it comes to programming, but none of us are stupid either. Especially if we know how to program. hint, hint hint.


Bad comments are usually easy to distinguish from good ones; they don't provide much detail, they're way too long and possibly make absolutely no sense at all. As I mentioned above, summarizing is the key that leads to success. Not all of us are good at writing, but explaining what you did really shouldn't be that hard, unless it's an engine we're talking about - but not even that, because people also make documentations for their engines so that they're understandable, so that's not even a good excuse. Sorry!


Only the fittest will survive.

To avoid such annoyance and to perfect the obvious, practice. And when I mean practice, I mean practice. Every time you write a line of code that seems as if it's going to be complicated for others to understand, attempt to make a comment about it. This helps to see if you actually understood what wrote, so take your time and try giving it a shot.


Hope you guys enjoyed this post! Sorry for not posting earlier - I got caught up with a few things, so it's been a while. But please keep a look out for more posts by me! I'll be updating again shortly. :) 


Friday, June 6, 2014

Creating Your Own Rickroll



Troll: "Go ahead, go ahead! Click the link!"
*click*
*rick-rolled completely*

You know how all of those trolls and newbies used to get you with that repetitive, annoying yet catchy, rick-rolling gif with that song? I always wondered how they did it - didn't you? Especially since you'd have to use your task manager to click off the entire web browser because you couldn't just simply click it off. How annoying.  
But we're about to create one ourselves today! It's about time you got your revenge back and created your own personal one from scratch. Whaddaya think? Ready to rick-roll? Good. 

If you want to view mine in action, feel free to click on this link. But don't worry, I didn't add any alert boxes or such so that you won't be able to click it off like a troll.  It's just a simple rick-roll with a little sign (look above) saying you got "rick-rolled". Instead of spamming someone with complete alert boxes or whatever, we're going to keep it simple and produce something like that. Take notice that this program does not include the usage of jQuery

1.  Finding an Animated Rick-Roll gif



Ah, just looking at his face makes you get rick-rolled. It's like a curse, y'know? But anyway, if you don't want to use the one I have (although it's best that you do), then search for another. But in this tutorial, I'm going to use the exact same one. But just Google search "Rick-rolled gif animated" and you'll see a bunch - even the one where he has his cool shades on. Make sure you copy the image link though, please!

2.  Using JSBin to Code


In all of my tutorials, I always use JSBin. It's a free website where you can code HTML/CSS and JavaScript (as well as a few other languages, CoffeeScript and jQuery of course). Some people use JSFiddle as well, but I personally use JSBin due to my own liking of it. You can choose whichever one you want though. :)

3. Displaying the Animated gif with HTML


To begin, we want to provide an <img/> tag. <img/> tags are tags that reference to an image, so you wouldn't be able to use this tag for any other purposes. For more details, click here. Make sure you create a closing backslash since <img/> tags don't have their own personal closing tag. 

After doing that, we want to provide two attributes to our <img/> tag; one being an ID and the other being called source. The id attribute allows us to produce some CSS code to that specific tag only. If you still don't understand, it's like giving it special abilities unlike the rest. 

To make use of our image link that we copied (the rick-rolled animation, remember?), let's put it in the source attribute in quotation marks. Also, take notice from the image I displayed above (you can click on the image to enlarge it, by the way) - you need a equal sign (=) to attach the image to the source attribute. Same goes for the id attribute; you need to provide an equal sign and then quotation marks. Only difference is naming your id, which could be anything you want! I put mine as "rickrolled".

4. Using CSS to Stretch Our Image


  
 In the CSS file, I linked my id attribute that was connected to the <img/> tag. Remember, ids' are hash tags in CSS when you're trying to edit it. 

Take a look at the code - it's quite simple, right? Glad you agreed. To explain top from bottom:
  1. I set it's position to fixed so that the user won't be able to scroll the image - it's basically locked onto the screen.
  2. I set the width and height to 100 percentage to adjust it's size, since it was a small image when we had first saw it. Now it stretches out, although you probably won't see much of an change.  
  3.  I set the top and left to 0 pixels so that it evens itself out. It helped determine the size to a perfect fit with no struggle whatsoever. Your image will probably look blurry, but that's because you got a bad gif/png (not my fault!).
  4. Notice the brackets. Those are important. Don't forget to add yours!
Now, if you click that little black arrow in the upper right corner (if your "Output" tab is highlighted), then you should see the code in action. Your little rick-rolling buddy should be rick-rolling those fools to death. Well, you being the fool as of now. 

5. Getting Audio (what is rick-rolling without music?)





Okay, this is such a bad picture.. Looks like a website that would give you a virus, huh? But it's not. In fact, I use this website all of the time for my games. It's called Mp3Skull - check it out (you're going to need to anyways if you want to follow this tutorial..). In the search box, make sure you type up exactly what the song is called. Sometimes you'll get a result from some guy named Barry I believe, but he's not the rick-roller. Just some weirdo who tried mocking Rick Astley's song. Sorry!

After you do that, I want you to hold down the left-click button on your mouse where the download button where the mp3 file is (see it?) and drag it into your URL box at top. My demonstration was poorly illustrated, but I apologize for that. But when you're finished with following that step, make sure you copy the entire link - we're going to need it.  

6. Playing the Audio in Your HTML Document



  
You made it this far, great! You must be determined to troll people. Now, we're going to want to make use of our link that we got.. We need to create an audio player in JavaScript. This is sort of like manipulating the DOM (HTML document). Let me explain the code from top to bottom in my JavaScript file/tab above:
  1. First, we created a variable called audio. After we did that, we assigned it as a new Audio Object with the new keyword. Then, we gave it parentheses with quotation marks inside of it with the link to our audio (that's where you post your audio link at!). If you understand Objects, you'd understand this very well.
  2.   Below that piece of code, we used the Audio Object's method: .loop on our Object (the variable "audio"). We assigned it to the boolean value true so that it keeps the audio looping - yes, that's the purpose of this method. We don't want our audio to end, so we have to keep it rolling (get it?).
  3. As you probably guessed, the code below that plays the audio that contains our rick-roll song. High five. But to notice that .play() is a method. We even have the ability to pause our music as well, but that's not needed to be mentioned.   

If you want to test it run, don't be shy! Give it a shot. It should work perfectly fine (if you did it correctly). If a problem occurs, just analyze my code above and see what you missed - I understand this might be a little difficult for you to understand, so don't force yourself to learn all of it in one day.


That's it! Your rick-rolling mayhem should be ready to start! You probably noticed the little advertisement banner at the bottom of your image (if you selected this one), but don't worry about it. You could always create a border that says "YOU GOT RICKROLLED" if you feel need to do so like I did. But I encourage you to add your own ideas and see what you come up with! Perhaps you can create that never-ending, painful spam of alert boxes that trollers use to create. Good luck! :)

Have fun! I hope you guys enjoyed this tutorial! Stay tuned for some more and keep your eyes peeled for more interesting posts by me!





Wednesday, May 28, 2014

Java !== JavaScript: return true;

Surprisingly, everyone seems to get the two languages Java and JavaScript for being the same thing. It's like a virus that can't be erased unless you find out the solution or difference, which in my opinion, can be quite simple if you just search the web (no kidding!). But it's mainly because someone named the programming language JavaScript after Java, so whoever did this managed to successfully manipulate people drastically. But this article is going to be about the differences between the two languages, and how they're not the same thing. So hopefully you won't be like the ones who are confused after reading this!

Java



Java is coffee. You brew it to your personal taste and add sugar if wanted, then sip with milk or either by it's perfect original taste. Where do the beans come from? No one knows. Only the computer produces such a magnificent, flavorful..

No really, let's cut to the chase. Java is not coffee (in the programming world!). Java is a powerful and common object-oriented language that actual developers use to create devastating mobile apps and games that you see (without realizing it) to this day. The popularity of Java is increasing, because more people are looking towards it's simplicity unlike other high-level programming languages (like C, C++ or maybe even Objective-C). I honestly wouldn't know much about C or C++ being complex, but I do know that Java does seem simple from my own personal experience. Take note that the fundamentals of Java came from  C++, but the creators improved the syntax of Java so that it could be more simple for programmers to use. And so far, they done a great deal to society by doing so.

Aside question: Why did they use coffee as their logo for Java?

This is kind of a general question, but no one really knows. I actually did my own research (across the web) and I haven't found a good solution yet, so I'm not sure. The creator probably just came up with the name while sipping actual Java. Besides, from what I heard, programmers run on coffee. But I don't..


JavaScript

JavaScript is a popular, object oriented, web-based programming language used by Web Developers. People use this language to make websites created out of HTML and CSS interactive. Without doubt, you probably seen JavaScript in action, because it's nearly everywhere across the web browser. Input boxes, check boxes, radio buttons - all of that stuff is powered by JavaScript. The power of this language is great, but it isn't as great as Java. You definitely wouldn't use this programming language to create mobile apps or games unless they're web-based. This is not a language to look into if you aren't interested in web development, because that's basically where that direction is heading.

The good thing about this language is that everyone is learning it across the world, so finding open-source projects or tutorials is very easy with just a simple search (unlike Java). You wouldn't have much trouble learning this language either because JavaScript is more simpler to get into and less complex. The only part of JavaScript that might confuse is the object-oriented part, because it takes a lot of effort to utilize the code and remember it's methods. But other than that, you're definitely good to go. This was actually my first language that I had gotten into thinking it was for mobile development, but I realized it wasn't through my brother and by research. It was kind of disappointing on my part, but I'm glad that I learned this language as a first - I'll talk about that in another article, perhaps.


Listing The Difference Between The Two


I probably don't have to list the difference for you guys, but just in case you're unsure - and for the sake of this post - I'll break it down for you. Once you're finished reading the difference, you should probably look exactly like that meme above. Jussayin'.

JavaScript

  • Popular web-based programming language
  • Used to make websites interactive
  • Can be used freely on your browser, with no download needed
  • Object oriented 
  • Less complex syntax than Java
  • Leads to Web Development as a career
  • Easier to learn on the web due to popularity
Java 
  • Very powerful, common programming language
  • High-level programming language
  • Used to make mobile apps and games
  • Cannot be freely used on your browser - you need to download an IDE
  • Object-oriented
  • More complex syntax than JavaScript, but simpler than C++
  • Leads to Software Development as a career
  • Not easy to learn using the web as a source, but popular among the web

Wow, look at the difference! If you aren't amazed or even the slightest astonished, you have to be crazy. It's quite easy to say that Java isn't JavaScript now because they have NO similarities at all. And I'm not saying this to belittle our web-based language JavaScript, but it is absolutely nothing compared to Java. The only reason this topic is ever brought up in the programming community is because people can't distinguish the difference between the two due to the similar names. But trust me, the concept and design is totally different.

That's it! Feel free to comment if you have any questions or just want to throw out your opinion. It's fun to have active people willing to spread their knowledge, so don't be afraid not to.

See ya!