MacBook, defective by design banner

title:
Put the knife down and take a green herb, dude.


descrip:

One feller's views on the state of everyday computer science & its application (and now, OTHER STUFF) who isn't rich enough to shell out for www.myfreakinfirst-andlast-name.com

Using 89% of the same design the blog had in 2001.

FOR ENTERTAINMENT PURPOSES ONLY!!!
Back-up your data and, when you bike, always wear white.

As an Amazon Associate, I earn from qualifying purchases. Affiliate links in green.

x

MarkUpDown is the best Markdown editor for professionals on Windows 10.

It includes two-pane live preview, in-app uploads to imgur for image hosting, and MultiMarkdown table support.

Features you won't find anywhere else include...

You've wasted more than $15 of your time looking for a great Markdown editor.

Stop looking. MarkUpDown is the app you're looking for.

Learn more or head over to the 'Store now!

Tuesday, June 28, 2005

The Matisse project I was mentioning earlier, hoping it wasn't vaporware, is now available and is very good, though still obviously an early release. I've only played with it a few minutes, but at least on a 1.2 GHz G4 with a ton of RAM, it's running very quickly, and allowed me to mock up a form as quickly as anything I've made in Visual Basic 6.

Now there are still issues. The automatic resizing anchors that link fields to items near them is pretty poor -- or at least for me unintuitive. My very nice looking form (that really did take seconds to create; great job, Netbeans) looked pretty wonky once I tried to resize at runtime. I also had a hard time selecting a block of widgets and moving them all at once, which should be pretty easy to do. Maybe it's a one-button thing; I'm using my iBook to test.

But I haven't seen a good Java 2 GUI builder that could even do so little as compare to CodeWarrior's old null Layout RAD, and had become pretty good at laying out forms with Grid and BorderLayouts in code, with GridBagLayout pulled out in special cases to get a form just right. Matisse smashes this glass ceiling and makes creating good looking Java forms a possibility. Hopefully soon it'll make creating resizable, good-looking Java forms just as trivial a task.

Anyhow, if you feel like downloading...

-- Grab what's now the latest Q-build
-- If you want to make Matisse the default (I did; I do most of my hacking in Eclipse and Netbeans'll need Matisse working for me to switch, I believe), you need to hack your netbeans.conf, as described below.

For your convenience, you can manually make the switch permanent using the following approach:

* Go to the NetBeans installation directory and open etc/netbeans.conf file
* Add -J-Dnetbeans.form.new_layout=true switch to the netbeans_default_options property
* Save the file, now the IDE will run with the Matisse layout designer turned on by default


On OS X, here's how to get to your netbeans.conf:

If you want NetBeans to always start with specific options such as --userdir, --jdkhome, --fontsize, etc., so that you don't have to type them on the command line at every launch, the most convenient way is to add your custom options directly to the NetBeans configuration (netbeans.conf) file.

To do this, Control-click the NetBeans application icon and choose Show Package Contents from the contextual menu. In the Finder window that appears, navigate to the Contents/Resources/NetBeans/etc/ directory, Control-click netbeans.conf, choose Open With from the contextual menu, and select your preferred text editor. Then add the custom parameters you wish to use and save your changes.

posted by ruffin at 6/28/2005 09:13:00 AM
Monday, June 27, 2005

Word to the wise when it comes to Mac OS X printer recommendations: If it ain't on this list, don't get it. This apparently includes virtually every make and model of printer known to humankind, minus mine, the Lexmark Z22. Don't buy it for use with OS X. Lesson endthige.

posted by ruffin at 6/27/2005 06:16:00 PM
Friday, June 24, 2005

As if Columba will have 3 million Indian users - Columba - Java Email Client:

Columba will have 3 million Indian users
IT Minister of India to put Columba and OpenOffice on a CD amongst other tools. It will be distributed for free with all major Tamil magazines and newspapers and targets 3 million people.


So if I pay to put The Digest Handler on a MacAddict CD, how many Indian users do I get to claim?

Seriously, where do you start in on that horrible piece of propaganda? That they claim 3 million people are going to be "users"? That, even if there were 3 million people using Columba, that every one of those 3 million are going to be ripping their hair from their roots when they realize how difficult it is to get it to do what Thunderbird, Mail.app, Entourage, or Evolution does much more easily?

Columba's a great idea and they have a nice looking web presence, but in my experience on the Mac, the app is horribly written and hardly ready for prime time. When I initially saw that headline quoted out of context, I was afraid some government agency was going to shove Columba down its users' throats, which would have been a dire thing indeed.

I wish Columba the best of luck (especially if they keep MPL'ing everything), but fellows, seriously, it's not going to replace 3,000 users' favorite mail handlers any more quickly than The Digest Handler is.

posted by ruffin at 6/24/2005 06:49:00 PM
Friday, June 17, 2005

How come NewEgg can ship me a tower case, motherboard, processor, DVD drive, and RAM for $16.71 and people feel they can charge $20 to ship a Powerbook 150 off of eBay?

(Yes, I know, because people will pay, and you don't have to refund shipping. Still, scams abound everywhere. As opposed to abounding in a two foot square radius.)

posted by ruffin at 6/17/2005 08:50:00 AM
Thursday, June 16, 2005

I'm sorry, but this comment simply doesn't hold:

JS is not going away, so it ought to evolve. As with sharks (and relationships, see Annie Hall), a programming language is either moving forward, or it's dead.

No, when a programming language doesn't change, it's called a standard. Look at what we've been able to do keeping html, css, and javascript a stable target for so many years! It's like Space Invaders on the Atari 2600 -- nobody who created that console, its hardware designed specifically for playing Combat and Video Olympics, expected someone to be able to slap six sprites in a row, much less have the player shoot then down one at a time. The 'standard' that was the 2600, however, gave a stable platform for programmers to learn tricks that would give the console life well beyond its creators' expectations.

We've got something like that with javascript, and we can see what happens when we compare to something like Visual Basic 6. Developers are still upset about Microsoft's decision to drop official support for VB6 in an attempt to force people to upgrade to VB.NET. Know what? Those upset programmers have found that VB6 hasn't rusted and simply continue using it to create their apps. There are more companies than you'd know (here's one) whose major apps are/were written in VB6, the 'prototyping language'. They're not quite ready to cast the baby out with the bath.

Fix bigs in javascript? Absolutely. The issue is that we've reached a point where nearly every browser anyone uses supports a 'single' flavor of javascript and we're all familiar with how to make our code work with the few quirks that remain crossplatform. There is a standard on nearly every box on the net that coders can assume will be there for them. I wouldn't want to see anyone mess this stable delivery platform up, splitting the user base into something like what we had in the Netscape 4.x/Mozilla/IE 4 & 5 days. Now *that* was an ugly time to code.

The bottom line is that evolution is an overused metaphor. You've got two choices if you'd like to propagate your genes into the future: immortality or reproduction. Immortality was a little too difficult to accomplish for living, unique individuals. Perhaps there were little organisms that could live forever, but something squashed 'em. They're gone. That's not a problem in the digital world, folk. We can make as many exact copies of an individual as we'd like. Javascript modules are not unique. They don't need to evolve. (I mean, come on, he even mentions sharks, a design that hasn't changed in millions on millions of years!)

Javascript should shoot to become an immortal standard, not another field of play and debate.

posted by ruffin at 6/16/2005 10:20:00 AM
Wednesday, June 15, 2005

MacDevCenter.com: Inside Samba: Windows Sharing for the Mac: "sudo killall -HUP smbd"

posted by ruffin at 6/15/2005 08:47:00 PM
Tuesday, June 14, 2005

Not that the world's been all that upset without the insight, but I haven't said anything yet about the Macintosh moving to Intel. Oh well, just to add to the bandwidth-spam, here goes...

I should start by saying that I was wrong. The move did surprise me. With hindsight, though, it's a great one for Apple.

So far, the smartest comments I've seen on the move have come from game programmers. Ryan Gordon has given the swap the most insightful comments, namely that...

1.) He thinks that "Classic is flat out gone".
2.) Rosetta is no panacea.

The first point is the most important. It explains why we had to wait until now to move to Intel. Macrumors and other sites had been saying the move was coming for quite some time. The only reason the move didn't come sooner, imo, is that Apple still had to support Classic apps. I subscribe to a number of the lowendmac.com mailing lists (insert Digest Handler pimp here), and these folk would not have done well trashing all their software in one fell swoop. By now, however, I, and many others, only boot into Classic to, say, play a few games. Everything I need has been Carbonized (when Classic code is tweaked especially for OS X), rewritten, or replaced. On my newest Mac, I don't even have Classic installed.

Getting to the point that Classic isn't necessary did take about five years for OS X to mature. We're there now, and OS X (including iLife, Safari, the Java VM, etc) has run on Intel the whole time.

Sure, perhaps there were "tweleth hour talks" with IBM, and why shouldn't there have been? Still, I'm relatively certain Jobs and Co. had made up their mind that the move was likely coming quite a while ago, not coincidentally shortly before the time OS X was released and the Intel rumors began to fly. Again, only Classic was holding them back.

The second point about Rosetta is just to say regardless of how well iLife, etc, runs, we're probably a ways from having all the old apps run seamlessly on Intel X.

The other insightful comment comes from our old favorite, John Carmack, and the insight comes from how he said what he said rather than what he said by itself.

The bottom line is that the compiler / cpu / system / graphics card combinations available for macs has just never been as fast as the equivalent x86/windows systems.

Finally, to use Carmack Capitalization, A Big Name has Finally Said that Macs Are Slower. This is not something he would have said on stage with Quake 3 Test at the MacExpo. This isn't even something he could say pre-Intel annoucement. Now that there isn't anyone to offend -- and no support and money to lose -- we're all free to admit it: Macs are slower. Now look, AltiVec specific tasks still fly on the Mac, and I hate that we're going to lose that. I would expect iMovie work, iDVD coding, and iTunes CD ripping to slow down a *touch*. Overall, however, the things are just plain old slow. My 1.2 GHz G4 with 1.25 Gigs of RAM still runs Eclipse about as quickly as my 533 Celeron with 384 megs of RAM. It just ain't no good.

There you have it. I think the move's a great one. The platform isn't fast enough. Though the iBook's a great deal, it could be a better one. This will unshackle the Mac and let it shoot for the moon -- and all that crud. And we'll finally hear the end of endian issues. I really don't care if game companies stop porting for PowerPC. I would as quickly as I could. Take the easy, efficient money, and port to Intel. It's a smart move; take advantage of it.

Heck, Apple'll gain money from people like me who have been slowly nuturing hardware for both platforms. Now I can pour the Windows hardware money into my Mac purchase. Yahoo! For me, however, the issue might not be if I put off the purchase (I've got a 533 Celeron now that my 2 GHz P4 died) but that my last split-hardware purchases might postpone my first IMac puchase.

posted by ruffin at 6/14/2005 04:31:00 PM

MacDevCenter.com: File sharing with Windows from Mac OS X::

sudo pico /etc/smb.conf. If you're prompted for your user password, enter it. ...
In this case, we're just going to call it 'shared'. Give yourself some space after the [homes] section by moving the cursor below it and pressing the enter key a few times. Now type in exactly what appears below:


[shared]
comment = Shared Directory
path = /Users/Shared
read only = no
browseable = yes
create mode = 755


And voila -- I've got central one spot on my home network for all my iTunes files. Yay.

posted by ruffin at 6/14/2005 12:32:00 PM
Wednesday, June 08, 2005

Though Matisse won't do anything about all that silly Swing thread crud in Java that makes making a desktop app impossible, relative to the gold standard set by VB6 and continued by Windows.Forms, it certainly seems to be a step in the right direction for making tools that really don't care about the code's underlying weaknesses. That's how tools should act. Good job -- if this isn't vaporware -- Netbeans/Sun.

posted by ruffin at 6/08/2005 09:13:00 PM

Okay, let's say you've got 35 gigs of legally downloaded music from Furthurnet and you want to change it from Shorten (*.shn) format to mp3. What do you do?

(Answer is going to be given with a Windows bias.)

Executive summary:
1.) Create a directory called C:\ShortenIsFun on your hard drive.
2.) Download shortn32.exe to C:\ShortenIsFun
3.) Place a test Shorten file in C:\ShortenIsFun
4.) Open an MS-DOS prompt window.
5.) In this window type:
       cd C:\ShortenIsFun (press enter)
6.) In this window type:
       shorten -x test.shn testOut.wav (press enter)
5.) Open your new .wav file in iTunes
6.) Set your iTunes Importing preferences to mp3 at 192 kps
7.) Highlight your .wavs in your library.
8.) Choose Advanced-Convert Selection to mp3 from iTunes' menus.

Done and done. Now set up a .bat file or a VB app or something to do all 35 gigs.

Convoluted ramblings
To begin, DO NOT search for shn2mp3 no matter how many sites beg you to do so.
    Let's pretend you want to play with shn2mp3 anyhow. shn2mp3 is a perl script that requires about five hundred other helper apps to run. To begin, you'll likely need to install Cygwin, a package of code that'll help your MS-DOS command line environment run as if it were living in *NIX-land. Cygwin is, if you have a high bandwith connection, pretty easy to install now, honestly. Download their setup app and let it run. You'll need to select the perl package, I think under utilities iirc, to run the perl script.

    Good luck. You'll have to pull down shntool and shorten and goodness knows what else. If you figure it out, please let me know.

Okay, let's pretend you're still with me. Instead of doing what you're supposed to, go to this address and grab the now ages-old shortn32.exe. You'll note there's another version here compiled for Cygwin. If you got Cygwin before messing around with and giving up on shn2mp3 and are relatively familiar with *NIX, you can grab that one and do the same thing.

Put your test .shn file, renamed test.shn, in a folder with shortn32.exe and run this command line:
shorten -x test.shn testOut.wav
Voila. You've got a .wav file. You've got two ways that I can figure to make an mp3 from this baby. Either figure out lame -- which you'll either need to compile from source (ha!) or grab binaries from some seedy location (like http://mitiok.cjb.net/), as the official lame site won't provide them to you. It's another bit of command line fun. I'm not bothering to tell you because I'm going to open all my freakin' *.wav files in iTunes, set my Importing preferences to mp3 at 192 kps, and choose Advanced-Convert Selection to mp3 from iTunes' menus.

Voila. Done. Argh. Headache.

posted by ruffin at 6/08/2005 04:16:00 PM
Friday, June 03, 2005

Here's an interesting quote:

Code cleaning : First, I run a quick and fully automated analysis of the code, with just a few rules:
    * remove dead code (classes, methods).
    * remove unused method parameters, variables
    * remove useless variable initialisation
    * remove useless Casting
    * tighten visibility (public => private)
    * move tests code to a separate code tree
    * modernize (Java1.4 => Java5)

That's a pretty good set of recommendations -- except the last one. Why do you modernize? Has the old code rusted, as Spolsky so aptly termed it? Why even put in the opportunity for bugs if the code's working and it isn't using methods that are even deprecated in Java?

There really is a strange bias in computer hacking that says latest is greatest. Here's why -- New code keeps people in the industry employed. Who's against modernization?! You're going to need someone to do that for you, after all, and that's a few more hours to bill. If we could use VB 6 forever, how could Microsoft sell versions of Visual Studio.NET? How could our dotnetjunkie friends sell their horribly written books? How about the consultants who need to sell training to your EAE programmers?!

Look, as soon as I say this they'll "upgrade" (and who's against upgrading?!!) it, but have you checked the computer system they're using at McDonald's? Green monitors, ASCII-rific stuff. It works. It's in place. Don't bother it.

If anything, people should be getting their code back to 1.2 -- even 1.1 -- except where absolutely necessary (though I'm not advocating places where Java 2 platforms are already well in place to change). Generics are great, but we didn't do so badly before they came on the scene. If it works, don't break it.

In short, don't rewrite any code that works unless you absolutely need to. Write to an API and refactor intelligently, not to help consultants sell training.

posted by ruffin at 6/03/2005 01:15:00 PM

<< Older | Newer >>


Support freedom
All posts can be accessed here:


Just the last year o' posts:

URLs I want to remember:
* Atari 2600 programming on your Mac
* joel on software (tip pt)
* Professional links: resume, github, paltry StackOverflow * Regular Expression Introduction (copy)
* The hex editor whose name I forget
* JSONLint to pretty-ify JSON
* Using CommonDialog in VB 6 * Free zip utils
* git repo mapped drive setup * Regex Tester
* Read the bits about the zone * Find column in sql server db by name
* Giant ASCII Textifier in Stick Figures (in Ivrit) * Quick intro to Javascript
* Don't [over-]sweat "micro-optimization" * Parsing str's in VB6
* .ToString("yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture); (src) * Break on a Lenovo T430: Fn+Alt+B
email if ya gotta, RSS if ya wanna RSS, (?_?), ยข, & ? if you're keypadless


Powered by Blogger etree.org Curmudgeon Gamer badge
The postings on this site are [usually] my own and do not necessarily reflect the views of any employer, past or present, or other entity.