July 2011 Archives
When I first received the PDF copy of the 500+ page "JavaScript Step by Step," (Second Edition) by Steve Suehring, I was predisposed not to like it very much. It's a Microsoft Press book (released through O'Reilly), and I'm not much of a Microsoft person.
But Suehring's Javascript book -- aimed squarely at beginning programmers and not just Javascript beginners -- explains things that other books don't (especially in the valuable first 50 or so pages) and keeps you interested with a writing style more engaging than most. A good technical-book writer is a rarity, and I put Suehring in my top tier. And I read a lot of technical books.
I've spoken to a few coders about what languages a beginning programmer should learn. Which ones first, which language is "better" for a given task, and most seasoned hackers tell me that the more you work on code, the more you'll probably pick up new languages as you go along. It's the bones of programming itself that you need to learn. After that you learn a new programming language by picking up on the syntax that allows you to apply core programming concepts to a new environment.
And while many if not most coders have a favorite language in which to work, more often than not I've heard that it's a good idea to pick up Javascript while you're working on another language because most projects that have anything to do with the web need (or, at any rate, can really use) Javascript in addition to the other scripting language (Python, Perl, PHP, Ruby, etc) you're using to make everything come together.
There are very few programming books for beginners. Most of the O'Reilly books I see assume that you know some other programming language and, as I say above, just need to get up to speed in this new programming language.
But what about the person who knows nothing of loops, arrays, variables, strings, objects and the like?
"JavaScript Step By Step" is more than sensitive to the beginning programmer. That alone makes it more valuable to a huge segment of potential readers than many of the other Javascript how-to titles out there.
The Microsoft emphasis isn't as much of a problem as you might think. The book encourages use of MS development products like Visual Studio but neither mandates their use nor avoids mention of others, including the excellent Firebug extension for Firefox that I rely on in my development work as well as plain ol' text editors.
Suehring offers an introduction to AJAX and jQuery, but he doesn't base his book on use of the latter library. JQuery is important, but more important in my view is teaching beginners the core concepts of programming and Javascript itself.
If you're looking to go beyond tweaking HTML and CSS and want a gentle introduction to Javascript, Steve Suehring's "JavaScript Step by Step," is a fine place to start.
Note: The images in the PDF provided by O'Reilly for this review looked terrible. I got an e-mail acknowledging this and pointing me to a new link. At the time, the new PDF was no different from the old one. I went into my O'Reilly account again and re-downloaded the PDF. The images look much better now.

Once I got Thunderbird 3.1 (with the extremely useful Quick Filter function), I was happy.
I got it first in Windows, then in Linux. I knew Thunderbird 5 was coming. And now it's here. It's probably been "here" for a while, but just this morning Mozilla pushed it to my XP box.
I did the install, answered a helpful dialog box to bring in a new version of the Lightning calendar add-on, and now I'm enjoying what definitely is a faster browsing experience with Thunderbird 5.
Some may say the mail client is dead. But I'm using them more than ever these days, almost always with IMAP so my mail stays on the server and I bring down to my local drive those messages I need to archive.
That method works for me. And Thunderbird, especially in the 3.1 era, has been performing better than any other mail client I've used -- heavy or light. I'm anxious to see what's better and faster in Thunderbird 5.
Though my main operating system is Debian GNU/Linux, I do maintain a Windows 7 partition on my newish Lenovo G555 laptop not only to watch Silverlight-dependent Netflix video but to test things in Windows for the purpose of writing posts such as these.
A huge Windows 7 update has been installing in this very same laptop over the course of three days.
The first day I stopped it manually because I had other things to do than wait hours for the download and install and shutdown (they don't even let you shut down in a timely manner, that Microsoft).
But yesterday I consented to have the Windows Live software install itself. It took a hell of a long time.
Never mind that the Windows 7 Service Pack installation has already failed twice.
Today I thought I'd give Windows Live the ol' college try, as they say. I decided to configure Windows Live Mail for one of my IMAP accounts.
The configuration itself was easy. After doing this dozens of times in all manner of e-mail clients, I'm past most of the pain in this regard.
So I got my information into Windows Live Mail, and I proceeded to bring the messages into the application via IMAP.
Sure enough, they all flowed in, and I started looking at them.
The interface looks good, has a lot of sophisticated animations (windows shrinking, fading, etc) that I'm not used to because I hardly ever use Windows 7 for anything but watching Netflix.
I even forwarded an e-mail. I'm not sure whether or not that operation succeeded, but it appeared to go well.
But after that I continued reading mail messages, and a few more emails into it, the window froze. No clicking of any kind elicits anything but a warning "bell" sound. I can't seem to kill it.
I can't even figure out in Windows 7 how I get to a screen where I can kill this.
What I can do is right-click on the Windows Live Mail icon and -- wait for it -- not kill the program but actually create and send an e-mail. I can't read an existing message, nor can I quit the program ...
I'm going to try the twice-failed Windows 7 update a third time, and then I'll do my level best to quit out of Windows and boot back into Debian Squeeze.
Minutes later: Shutting down Windows entirely had the effect of closing Windows Live Mail. I'll try again later (the mail client and the elusive Service Pack upgrade).
Now I'm back in the GNOME 2 world of Debian Squeeze.
I've had an annoying thing happen to me in Debian Squeeze (amd64 for those who care) after a considerable period of uptime.
The screen response gets really slow, the mouse pointer barely moves, the disk-access light is pretty much pegged, and I can't even get a virtual terminal open.
I think it's the Chrome web browser doing some kind of disk-intensive activity.
Why do I blame Chrome? Well, eventually I was able to get a terminal open to run the top utility, and the Chrome browser was consistently using about 60 to 70 percent of CPU -- pretty high for this lighter-than-others browser.
And once I closed all my Chrome windows (I had 3 open), the problem went away and I had my snappy Debian Squeeze GNOME desktop back.
I also reopened Chrome and am using it right now without incident.
I've got nothing concrete to go with, but I think that after an extended period of time running on the desktop, Chrome goes a little crazy and needs to be killed and restarted.
On a related note, I'm now following the Iceweasel-release archive from The Debian Mozilla team. Right now the "release" is still Iceweasel (aka Firefox) 5.0.1, but soon enough it'll be 6.0.x. I don't know what to expect as far as speed improvements go, but I'll be hoping for a better Iceweasel experience in the very near future.
This isn't a tutorial on how to install and run Dropbox in Linux without the GNOME desktop environment entirely.
Instead it's a quick-and-dirty way for users who've already installed Dropbox in their GNOME-running Linux system to get Dropbox working when they're running a lighter window manager instead of the full GNOME desktop environment.
Why so specific? Because I am running the Fvwm window manager right now. I got acquainted with Fvwm via OpenBSD, where Fvwm is the default window manager.
It's a great environment to work in: Fast and configurable.
But I have come to rely on Dropbox, and I was slightly surprised to find the file-sharing service inoperable when I was in Fvwm and not GNOME.
A quick search yielded the following: Dropbox stars with the dropboxd daemon.
My thought (which turned out to be correct) was that all I had to do was start the Dropbox daemon and I'd have the service working without needing to be in GNOME.
As I say above, this is the quick-and-dirty way: I already installed and set up Dropbox in my GNOME-running Debian Squeeze system using a .deb package from the Linux Mint Debian Edition. (Note: I'd prefer a package from the Debian archive, but the project doesn't package Dropbox due to its proprietary nature).
This is nothing but a quick hack to get Dropbox working while I'm in Fvwm (or Fluxbox, Openbox, Blackbox, Ratpoison, IceWM, JWM, etc.).
Here it is:
What you have to do to get Dropbox started when not in GNOME is to run the Dropbox daemon manually. I'm sure you could set up a script to do this, and you could even trigger the script to run when you start your chosen window manager. I suppose that's my next step. That's less quick (but still dirty).
Anyhow, for the minimum of hacking, once you're logged into your non-GNOME window manager, open up your favorite terminal program and run the following from your home directory (the $ serves as your terminal prompt -- don't type it, it's already there):
$ sh .dropbox-dist/dropboxd &
Again, the $ is your shell prompt. Don't type it in.
Here's a quick explanation:
In my case (and probably in yours), I installed Dropbox on my Debian Squeeze GNU/Linux system from a package. Among the things that package did was set up the program in my home directory. Not the most elegant solution, but it works.
Dropbox is started with the dropboxd daemon, which runs automatically when you start up GNOME. If you select another window manager in the GDM login manager, the daemon is not automatically started. Hence no Dropbox.
To get Dropbox running, you must start the daemon. It is located in a "hidden" directory inside your home directory called .dropbox-dist.
In Linux/Unix, the ~ is often used as a shortcut for "your home directory."
So on my system, my "home" directory is /home/steven.
That means the daemon is at /home/steven/.dropbox-dist/dropboxd
But in Unixy shorthand, we write that as:
~/.dropbox-dist/dropbox.d
Note the & at the end of the line. This tells your shell to run this command in the background and return you to the shell prompt. If you omit the & character, the daemon will still run, but you won't be returned to the shell. This could be a big deal, or nothing at all. But use the & and run the daemon in the background. There's no harm in it.
Again, just run this line and Dropbox will be activated:
$ sh .dropbox-dist/dropboxd &
This should work without a GUI at all: I see no reason why you couldn't run the above line directly in the console without starting the X Window System at all. That way you can use Dropbox from the command line without X.





Recent Comments
Monstra on CMS and blog software without databases: Monstra CMS is the best flatfile CMS ever! (!) Easy to install, upgr ...
Chris on Running OpenBSD in a live environment with MarBSD-X : Jggimi isn't developing his images anymore. If you want an updated Ope ...
Peter Ljung on Review: DragonFlyBSD 3.0.1 -- the longest DragonFlyBSD review ever -- Part 5: Comparison to OpenBSD 5.0 and closing comments: I have also been fascinated by the Hammer file system and think it wou ...
Anonymous on Review: DragonFlyBSD 3.0.1 -- the longest DragonFlyBSD review ever -- Part 2: My BSDistory: Can you just get to the actual review? ...
Bill Callahan on SugarSync is working on a Linux client, but I'm not unhappy at all with Dropbox: I've been very happy with SpiderOak. It has a native Linux client as w ...
AJ on Debian Stable -- set it and forget it -- spoils me for fresh Linux Mint 12 on some very nice ZaReason hardware: Gnome 2 is still standard in the upcoming SolusOS (Currently at RC 2). ...
Niki Kovacs on Debian Stable -- set it and forget it -- spoils me for fresh Linux Mint 12 on some very nice ZaReason hardware: Since I've moved to Debian stable - with a few tweaks - I've not only ...
Earl on Debian Stable -- set it and forget it -- spoils me for fresh Linux Mint 12 on some very nice ZaReason hardware: I use Mint 12 and LMDE based on Debian testing. Both are plagued by G ...
Alan Rochester on Debian Stable -- set it and forget it -- spoils me for fresh Linux Mint 12 on some very nice ZaReason hardware: "mint does have a separate xfce edition afaik.." The Debian version o ...