Javascript

Honestly I’m not sure who thought it was good idea to make this language. I’ll admit its better than PHP, and I understand that some people actually enjoy using it. For instance, there is a web server written completely in JavaScript (hence my comparison to PHP). This boggles my mind.

My main issue with it is that there are no high level features built inherently into the language. For instance, there isn’t even an agreed upon method for importing other JavaScript files. Inheritance? Going to do some pretty messy hacks in order to get something that acts like an inheriting class structure. How about maps (aka dictionaries)? Objects and maps are the same thing. Arrays are basically just hash-maps for non-negative integers.

I suppose it’s about interesting exercise in thinking. Treating every structure (including classes and functions) as variables had its upsides. Ultimately, though, you have to use it whether you like it or not. There’s no substitute for the client-side functionality it provides. CSS can only go so far. When you start looking at something like AJAX, it makes you cry simultaneously at the pain of working with it and in joy for all the opportunity it provides.

The reason I have been thinking about and working with JavaScript (although only dabbling, of course) is that I’ve been taking another course at Udacity. This one is on game development in HTML5. Before this course, I really had no idea what HTML5 was. I had heard it mentioned, but then it all blew over. HTML5 is, to the best of my understanding, a standard that introduces some new HTML elements and JavaScript standards that lets developers manipulate pages in more creative ways.

For closing thoughts, I’ll leave you with this hilarious “talk”:

Advertisements

Udacity

I was going to write this post a lot earlier, but I’ve had a lot on my plate recently; AP tests are coming up, track is coming to a close which means a slurry of meets, and I’ve been doing a Udacity course. Udacity is a site that offers free online courses in a video-lecture/machine-graded-homework format that allows thousands of people to participate in each course as it’s happening.

logo-udacity-1600-900px_article_landscape_gt_1200_grid

It was created by the professors who taught the Stanford AI online course, which pioneered the format. It was a huge success, so they decided to create a separate organization which offered a variety of these free classes. They also bring in different people to teach the different courses.

For example, the web programming course that I’m taking is talk by one of the cofounders of Reddit, Steve Huffman. The course is quite interesting. Of courses, I taught myself HTML and PHP, but there are holes in my knowledge, both basic and advanced. The course filled some of those in, but it also teaches an area I’ve never worked in before.

The course is mostly about building an app using Google App Engine. For those who don’t know, App Engine runs a Python environment. You upload code and other files which, given a request, generate a response. You can map out various directories to either query code or directly draw HTML or other documents. Within the code, you have to write one or more handler classes which extend the App Engine API. They have functions for GET and POST requests, which then build a response. Google App Engine also has other functionality, such as data storage.

Anyways, posting will get back up to speed after the AP World History test, which marks the end of a lot of my business. Next post will be more TF2, so stay tuned.

FTP, SSH, WTF

I spent most of today and yesterday trying to set up an FTP server. I want people to be able to download any of the movies and TV shows in my (legal) media folder. I also figure it is easier than a webserver, but still a good way to understand the process. I was so wrong. I went through a number of servers, finally settling on Filezilla. I opened all the necessary ports, and then some. I started the server, set up all the config stuff. I registered a dynamic DNS that works (when I connect to it with the Filezilla client it reroutes to the correct IP). However, nobody can connect using the external IP (I can connect to the server using localhost, so I know that the server works). None of the help threads on the Internet have helped me. Similarly, Cygwin also hates me. I try to set up an SSH server, which should be nice and easy, but instead I run into a bunch of errors based on administrator privileges, which shouldn’t be an issue.

If anybody has any tips, I need them!

%d bloggers like this: