May 20, 2008 | Comments: (0)
I'm gearing up to write a comparative, multi-platform review of Rails IDEs. Before I freeze the list, I'd like to know what other people are using themselves to develop Rails sites.
Currently I'm considering these 8:
- Ruby in Steel
- Aptana RadRails
- Komodo
- 3rdRail
- NetBeans
- SciTE
- TextMate
- jEdit with Ruby plugin
Do you have experience with any of these you'd like to share?
Do you use something else for Rails development?
What are the strengths and weaknesses of the Rails IDEs you use yourself?
Posted by Martin Heller on May 20, 2008 11:16 AM
February 21, 2008 | Comments: (0)
Hacking: The Art of Exploitation, Second Edition
By Jon Erickson
Second Edition January 2008
Publisher: No Starch Press
Pages: 480
ISBN 10: 1-59327-144-1 | ISBN 13:9781593271442
I picked up this book equally prepared to love it and hate it. I put it down with decidedly mixed feelings.
There's some valuable information in Hacking about how various exploits against programs, networks, and servers work. It's mixed in with a lot of background about how computer programming works. I eventually found myself scratching my head wondering who the book is really for.
According to the publisher, the first edition of Hacking was a best-seller. Maybe there are a lot of wannabe hackers in the world.
Posted by Martin Heller on February 21, 2008 08:51 AM
February 08, 2008 | Comments: (0)
Today it was Firefox. Yesterday it was QuickTime. Next Tuesday it'll be Windows, Office, and Internet Exporer.
I'm talking about critical bug fixes. It's worse for me than for a lot of people because I personally have 6 Windows computers and a bunch of Windows Virtual PCs that I have to keep up-to-date for software testing.
Now, I used to think this was just a Windows issue. Then I started reviewing Linux systems: Red Hat, Fedora, Debian, Mandriva, SuSE, Xandros, and so on. Every one of those systems needs frequent critical bug fixes, and most of them need more of them than Windows XP. Fedora may well be the worst distro I have for the number of critical bug fixes that need to be installed, but maybe that makes it the most secure day-to-day: I don't know.
Meanwhile, it's hard to get any real work done if you spend all your time updating your computers.
I'm singing the blues about this, but the words aren't suitable for publication. Do you have a verse to offer on the subject that could be printed in a family magazine?
Posted by Martin Heller on February 8, 2008 08:08 AM
December 16, 2007 | Comments: (0)
Mandriva Flash 2008 First Look
A bootable 4 GB Flash Drive containing a portable version of Mandriva Linux 2008 is now available from Mandriva for 79 EUR ($89) and from Amazon for $94. The general idea is that you can take this little memory stick with you and be able to run Linux from it, do Internet and Office tasks with Firefox, Thunderbird, and OpenOffice, and save your files to the free space on the drive. The Mandriva system can access Windows volumes, and the free space on the flash drive can be read from Windows.
I tried this device out on the two computers I have at home, a fairly new Compaq Presario V6000 laptop, and a 5-year-old Compaq Evo desktop. After some configuration issues, it worked fairly well on the new laptop. It was unusable on the old desktop, which barely met the minimum hardware requirements, although it's possible that with some tweaking it might be made to work better.
The first hurdle to using Mandriva Flash on any machine is getting the computer to boot from the flash drive. On my laptop, pressing Esc at boot time let me change the boot order for the current boot process. On the Evo desktop, changing the boot order didn't work, but the Mandriva Flash software was able to write a boot menu onto the hard drive.
The next hurdle on the laptop was getting the Broadcom wireless network adapter turned on. It took quite a bit of digging, but I eventually found the magic formula on the Mandriva Wiki: I had to download a small firmware file to the flash drive from Windows, reboot, and then reconfigure the network driver in Linux.
Both the Metisse and Compiz Fusion 3D desktops worked well on the laptop, but were disabled on the old desktop. I'm not sure why people really want 3D desktops, however: it's just eye-candy.
I found Perl, Ruby, Python and Java on the drive, along with Vi, but no gcc, gdb, or emacs. It currently has no way to run Windows software. As configured, it's a reasonable portable desktop system for casual Linux users, which might be more convenient than carrying around a Linux Live CD and a separate flash drive.
Posted by Martin Heller on December 16, 2007 08:14 PM
October 12, 2007 | Comments: (0)
One of my favorite techniques for rescuing Windows systems that won't boot normally or in safe mode is to try booting them from a CD-ROM, because what I care about most at this point is the data on the system. Sometimes I use a Windows CD, especially when I think the problem is corrupted system software that can be repaired with a reinstall without affecting the data files; sometimes I use one of the Linux Live CDs I keep around. Depending on how badly the system has been hosed, I can often boot from a CD and read the data from the hard disk, even though I can't boot from the hard disk. This isn't always easy, though.
For $100 you can buy Selkie Rescue, which is basically a stripped-down Linux Live CD that has been tailored for the purpose of creating readable Samba shares to the system's hard disks. How is it better than a free Linux Live CD? I asked that very question and got this answer from Jonathan Lyster, CTO of Tugboat Enterprises.
Linux live CDs are designed to demo Linux on a functioning computer; they are not meant to work on a computer that has begun to fail. As such, they have limitations:
- They use the full resources of a video card; if a video card has begun to fail, for example the components which enable the full color set and high resolution, a typical live CD will fail.
- Selkie was deliberately built to avoid using any components which don't have a direct bearing on copying files safely to a recovery computer. This means a computer failure caused by a bad audio chip on the motherboard will not affect Selkie. (Selkie doesn't include audio components.)
- Most live CDs can be booted to a command prompt -- but at this point the user requires technical knowledge of Linux in order to use the disc.
Selkie was designed with ultimate simplicity in mind. The user doesn't need any knowledge of computers or networking -- Selkie handles all of it. Selkie can literally be brought from boot-up being making all files available to the network in as little as three taps of the ENTER key.
I tried booting a Selkie CD in the oldest machine that still lives in my office, a 333 MHz Celeron box with 64 MB of RAM that runs Windows NT 4.0 Workstation SP6. I rarely bother to boot it up: it's only still here for an occasional software compatibility test. The Selkie CD came right up, and as Jonathan said it took 3 taps of the Enter key and a couple of minutes, and then I had shares on my network, in the correct workgroup, that showed me the files on the box from my other computers. I could also see a log of the hardware detected by Selkie, and a log of Selkie system messages.
Very impressive. In fact, there was nothing wrong with that box: I had no trouble rebooting it to Windows NT, and seeing the same disks on the network. But it's still nice to know that I have an easy way to get at the data on any of my systems if they ever become unbootable.
I didn't use it, but the Selkie Rescue box also contains a Cat 5 crossover cable. That's handy if you don't have a network hub, but do have another computer with an Ethernet port. There's also a manual in the box, but I didn't use that, either. Even I can press Enter three times.
Posted by Martin Heller on October 12, 2007 02:20 PM
March 09, 2007 | Comments: (0)
Vista User Account Control and the Linux Superuser
I have found most of the "Get a Mac" ads on television irritating and misleading, but two of the most recent ones were spot on: the one where the PC, played by the author and comedian John Hodgman, appears in a surgical gown, and the one where he is accompanied by a security guard in shades.
The surgical gown is of course a take-off on the need to add RAM and a graphics card to old, cheap PCs if you want them to run Windows Vista. It's true, at least for old, cheap PCs: Vista won't really run decently with less than 512 MB of RAM, and needs 1 GB of RAM and a GPU to display the Aero interface. I'll go into Aero another time: today I want to talk about security.
The security guard in shades who questions every decision is an apt metaphor for Windows Vista User Account Control, and I think it's quite funny. An even funnier metaphor for Windows Vista is the "new wife" of this blog post by "Chalain." The way that User Account Control dims the rest of the screen to get your attention for a permission question (see the image at left) is truly weird and drastic; I have to assume that the decision to do this was based on Microsoft's user experience laboratory research.
But let's put it into context. As generally recommended, I run as a standard user on my Linux installations, and only invoke administrative privilege, become the superuser, and take root when necessary. At first, I was annoyed that I needed to supply the administrator password to change the screen resolution on Linux, because I was used to making this sort of global system change at will on my Windows installations. Eventually, I got used to elevating my privilege only at need: it's the right thing to do if you care about security.
So, when I was researching the way to determine the shadow storage size on Windows Vista for my February 23rd entry, I wasn't too surprised when I got an error message about needing to elevate my privilege after I tried to run vssadmin from a standard command shell. What a Linux system would have done right there would be to ask me for the administrator password. What I would have done to avoid the question on a Linux system would be to use the su or sudo command to elevate privilege before running the system command that needed the privilege.
What was the first thing I tried in my attempt to create an elevated privilege command shell on Windows Vista? su, of course. It didn't work. I eventually discovered the two methods I told you about on the 23rd.
Now I wonder, why isn't there an su command on Windows Vista? What would it take to write one? Has somebody already done it?
I know there was an su command in the old Hamilton C Shell, but it was written for Windows NT conventions. I would guess that it wouldn't be very useful for Windows Vista, unless Nicki Hamilton has updated it in the last year.
Do I have to write an su command for Windows Vista myself? I am the only one who thinks it would be a good thing to have?
Posted by Martin Heller on March 9, 2007 06:00 AM
January 12, 2007 | Comments: (0)
A Programmer's Toolbox, Part 1: Editing and C++ Development
I work on several different kinds of projects, in several different programming languages, on several different platforms. You would think that I would at least standardize on one editor for all of them, but I haven't.
If I were going to standardize on one editor, it would probably be SlickEdit, which works on all the different projects, languages, and platforms that I use. It is not cheap, but I already have a license, and it does lots of nice things. Alternatively, I could use GNU Emacs or XEmacs for almost everything I do. I don't particularly like Vi; if I did, I would probably use Vim. Most Linux distributions include versions of Emacs and Vi, or can add them easily; I often edit with Emacs when I'm working on Linux systems.
When I'm writing unmanaged C++ for Windows, I usually work in Visual Studio, either Visual Studio 2005 or Visual Studio .NET 2003. The versions of Visual Studio that I use are fairly expensive, but the free Express versions are more than adequate for individual developers.
Visual Studio makes it very easy to start projects, add classes, add methods and properties to classes, write correct code without spelling everything out, consult the documentation, and debug. I wouldn't bother with the older version, except that a colleague who works on some projects with me hasn't upgraded to Visual Studio 2005. It's annoying that projects can't easily be downgraded from Visual Studio 2005 to Visual Studio .NET 2003; if there is an easy way to do that, I haven't found it.
When I want to refactor more C++ code than I can be sure of doing correctly by hand, I check all my source files in and out of version control for safety, close Visual Studio, open the Visual Studio project with SlickEdit, and use SlickEdit's automatic refactoring functions. When I'm done, I switch back to Visual Studio, recompile, run whatever unit and regression tests I have, and check everything in again. Then I continue in Visual Studio for the usual editing, building, debugging, and testing cycle.
I wish Visual Studio could refactor C++ automatically, but it can't. I rarely find myself doing massive refactoring, in any case: I have been doing C++ development long enough that my first class design is usually fairly close to the final design. When I'm initially wrong, however, it's really nice to be able to refactor with SlickEdit.
Posted by Martin Heller on January 12, 2007 06:13 AM
TOP STORIES
ADDITIONAL RESOURCES

- Remote Access: Maintain Security and Decrease the Burden on IT
- Beyond AntiVirus: Symantec Endpoint Protection
- What Every Enterprise Needs to Know About VDI

- Monitor the core and troubleshoot the access layer
- Disaster Recovery in Minutes
- Protecting Microsoft(R) Applications



