Languages of Choice

Posted

I recently checked out a book from the local library on Python (Learning Python, 2nd Ed.) and don’t think it is a very good language. It is too loose where it shouldn’t be, and restrains you where it shouldn’t.

A good programming language should allow you to do almost anything you need, should be consistent throughout, and should allow you to use knowledge of another language as a starting point. C and derivatives, Java, and to some degree Perl and PHP all have enough similarities in syntax that it is fairly nontrivial to learn all of them once you have learned one. For my money, however, the best one to learn is JavaScript.

JavaScript is (almost) essential if you plan on doing any web development. It is designed so that you can learn bits and pieces and do functional stuff within the first half hour or so (without much case and pasting), and is scalable. It can be used for trivial tasks such as image rollovers in a web page, but scales so well that the majority of Mozilla, Firefox, Thunderbird, and pretty much any other Mozilla.org application or extension is primarily written in JavaScript. A good chunk of DreamWeaver is in JS. Not to mention a large portion of Windows (okay, that’s not such a good example, but bad apps can be written in any language).

JS is cross platform. Odds are that the browser you are using can interpret JS. Excellent quality web applications are written in it (Flickr, Google Maps, and GMail come to mind). And if you want to do something more ambitious than a web app (perhaps an app that can save files, for example) you can make a piece of Mozilla chrome (XUL Planet has an excellent tutorial) that will run on any computer that is running any Mozilla.org application.

I long for the day that GNU releases GJSC (GNU JavaScript Compiler).

Apathy

Posted

For the past three weeks or so, I have felt the crushing embrace of apathy. Apathy towards my job, apathy towards my friends, apathy towards apathy. The thing that is scaring me is that I am embracing it right back. And I don’t care.

I (who am normally quite nice looking and well groomed) have shaved twice in the past three weeks and fixed my hair once. I haven’t been keeping my bed made. I left some clothes I washed in the dryer for four days before retrieving them; they are now sitting in a pile on my floor rather than hanging in my closet. And I don’t care.

I don’t do my best at work. In fact, rather than my normal taking pride in doing a great job, I am doing as little as I can get away with, sometimes less. When customers that I normally look forward to seeing walk in, I outwardly smile but inwardly shrug. And I don’t care.

I’m not getting enough sleep. I’m hardly eating, and what I do eat is rarely anything I want. I am doing an even worse job managing my finances than usual. And I don’t care.

I have uber-fast cable internet. I should be posting to my journal every day. I should be working at redesigning the site and tweaking the code for TextPattern. But I don’t care.

I’m not even trying to spend time with my friends. Rachel’s birthday was Monday; I almost didn’t call her. I have seen her once in the past week. And I don’t care.

I need to get out of this rut. I need to take care of myself. I need to tidy my room and keep it that way. I need to do the best job possible at work. I need to spend time with my friends and family.

If only I could bring myself to care.

Lord Of The Rings Review

Posted

I have tried to watch Lord of the Rings before, but always fall asleep not far into it. I just managed, for the first time, to stay awake through the entire movie. The plot is confusing, the characters are annoying and unbelievable, and the acting is horrible.

Worst movie ever.

WYSIWYG editors vs. text editors

Posted

Call me a lemming, but I feel like tossing my two bits into the classic web design holy war: WYSIWYG editors vs. hand coding.

While I find that WYSIWYG editors have their place, I could not stand to not do most of my design in code. Some of the benifits of this include:

no platform/software dependance
I create my pages on multiple platforms, sometime other people’s computers. If I used my computer only, I may find that I liked WYSIWYG enough to use it regularly, but as I use other people’s computers quite a bit, I need to do my design in a way that if familiar to me on all platforms. While various text editors have their differences, they all operate closely enough that I can sit down at any computer and create something.
better standards compliance
I make sure that everything I create validates and uses structural markup. While this is possible in some visual editors, it is far more difficult that just knowing the code. And as I do much of my design work (95% or more) in CSS, I need the flexibility that hand coding offers.
easier server side programming
I do quite a bit of server side programming. It may be more than I need, as I am fairly new to it, but even if it was just a little, visual design tools make it difficult to do any of it, much less echo items (such as table rows and cells) in loops.
better understanding of markup
Part of using standard markup is understanding that it is not meant as a visual design tool. Using WYSIWYG editors gets people in the mindset that, for instance, <h1> tags mean “big and bold”, rather than the main title of a page. They enforce the misconception that (X)HTML is meant for page layout, rather than describing what all the parts on a page mean in relation to one another. Understanding this is the key to creating useable, accessible, and interoperable web pages.

On the other hand, I’m not going to lie and say that I never use visual editors. I do so rarely, and never on a final product, but I find that using Claris Home Page (extinct for several years now, but almost supports HTML 2.0) to clean up documents, create headings, and the such on existing documents can be faster than using a text editor.

I don’t believe that anyone even semi-experienced in web design should even remotely depend on them, but they can be quite useful for newbies. Not for creating pages, per se, but they let new users create a page then examine the source (hopefully after running HTML Tidy on it) to develop a feel for how the code works. That is part of how I learned.

Summarized: visual editors have their place, but for the ultimate in power and flexibility, nothing beats working with code.