JavaScript Interpreter

I read the description for a program over at Code Project. It was for an interpreter written in JavaScript. I was excited about this since I am taking a JavaScript course right now. Much of the writeup had to do with the mechanics behind an interpreter. The sample program also only did interpretation of mathematical expressions. But the ideas were solid.

The extraordinary part of this article was that it was written by 17 year old Peter Olson. Bravo man. The writeup finished up with some easy, medium, and hard ideas to improve the project. Somehow I don't think I have the technology to tackle the hard improvements to this program. The college class on JavaScript is just too primitive to have taught me much. Perhaps I can knock out a couple the smaller TO DO items. Or should we say I can try some of the easier TO DO items.

Next semester I plan to take an advanced JavaScript course. That should pump up my skills.

Becoming a Web Developer

I read a post on how a developer went from being a noob web developer to a competant one. He works for a cool company. So I gave his opinions a little more authority. I would like to dabble in web development myself. Let's see where I am compared to this guy, and where I need to go.

He started by playing with URL parameters. Got it. Then he went tinto JavaScript. I am working on that. This is where my experience ends. The developer I read about went much further. He them learned an Object Relational Mapper. And he really pumps up learning jQuery, which is a JavaScript library for client scripting. I got a feeling I need to learn that next myself.

The guy said he got into FireBug, which is a tool to help debug all things web. He learned Memcached, which implements an in memory cache to speed up dynamic sites that depend on a database. He seems to be a Python developer now. He learned Python requests, which is an HTTP library written in the Python programming language.

The developer used Beautiful Soup, which is a python library for things like screen scraping. That seems a bit speciic. He also got deep into Cascading Style Sheets. I know a little bit about them. Then he mentioned that he turned his study to cookies. Isn't that a basic capability you need to know earlier?

Boss got into MongoDB, an open source NoSQL database. Today I learned that the Mongo comes from the work huMongous. He also uses DictShield, which claims to be a modeling system that is not tied to a specific database. Not exactly sure what that does. It seems to be relating to typing. Finally he got into the Python Natural Language Processing Toolkit. This also seems to be a niche.

The moral of the story is that there is a lot to becoming a web developer. Just when you think you learned a bit, you find out there is oh so much more to learn.

Free Courses at Udacity

I just heard that Udacity is soon to offer free courses online. These appear to be like college courses. However they are shorter. The bios of the instructors are impressive. A computer grades your homework. The cost is free. So why not try out a course or two?

The most interesting course to me is Web Application Engineering. The overview says that by the end of the course, you will be able to code up your own blog application. That sounds hot. It covers a lot of topics. The session I find most interesting is the one on how to scale your web app.

Another fun looking course is Programming Languages. It claims that by the end of the course, you will be able to develop your own web browser. That sounds like a tall hill to climb. The weeks are packed with complex topics such as grammars, lexical analysis, and parsing. Somehow I think you can learn those topics in just a few weeks. Maybe I am wrong.`