Fraud is the fastest-growing crime there is!

My local community relations officer from my city's police department sent this PDF to "We, the Citizens".  

    http://www.stopfraud.gov/news/immfta.pdf

At 36 pages, it is rather long, but definitely worth reading.  I'll update this post with my thoughts once I've digested it myself.

Comments [0]

The REAL evil behind illegal immigration, and why it's only half of the problem.

A married couple I know recently posted a Facebook status that contained an uncommonly strong-worded assertion:

There isn't ANY support for the new Arizona law that isn't based on racism.

This bothered me for several days, since I generally support the AZ law although it is quite incomplete, and of course, it has no effect in Florida, which is where I live. After mulling it over for a few days, I rose to the challenge and posted a series of replies. I am reposting it here.


It's economics, pure and simple. Try this compare-and-contrast exercise of illegal Hispanic immigrants and IT "Guest Workers" on H1-B visas (mostly Indians). Both groups generally come here to pursue a better life for themselves. Both groups have very scary consequences hanging over their heads if they do "anything wrong": expulsion from this country. Businesses make more profit from BOTH groups by paying them less than others are already here legally would make doing the work. Don't forget that some of the people already here are of Hispanic and Indian descent, and often have green cards or citizenship. People with green cards and citizenship, regardless of race, are being negatively impacted as well. The only real difference is powers-that-be (business and politicians) keep this situation going in two different ways:

  • In the case of the Hispanic illegals, Federal Laws are only enforced minimally (enough to keep the fear factor up, and this is one kind of fraud)
  • In the case of the H1-B workers, their visa program was created explicitly to flood the job market and depress wages, despite widespread unemployment. This is the second fraud that was perpetrated on this country.

In Western Europe, the same thing is going on, except that their immigrants are Eastern Europeans, who, last time I checked, are ALSO white. The idea that this is racism alone is promoted only to keep you and I from realizing who is really doing the evil, and that is American executives who want to lower labor costs. Classic case of "Pay no attention to that man behind the curtain." That man is a white American, plays lots of golf, and takes millions of dollars for himself, and is happy for everyone else to blame each other instead of him.

Next Reply: If you want to accuse anyone of being racist, it is that white American executive who is SO SURE that Hispanics and Indians will play so well into his plan to continue carpet-bombing both labor markets. He must not think very well of them, expecting them to be so timid, servile, and predictable. As for me, I have many Hispanic and Indian friends. I have taught myself Spanish over the past 6 years or so, and love Hispanic culture so much that my house is taking on Mexican-looking design features and color schemes with every remodeling project I do. I love their food and their music. So much that even my wife (who happens to be of Latin descent) thinks I'm going overboard.

Next Reply: The Arizona law is mostly a cut-and-paste job from the already existing Federal immigration law, and it's supporters simply want that law to be enforced by the state. The state enforcers can only enforce state law, so they had to do this in order to put it within their jurisdiction. It doesn't address the real problem which is the desire of businesses for cheap labor. And even then, it only addresses the situation of being here illegally. It doesn't address the damage that is being done through permissive guest-worker visas. So, at best, AZ's new law is only a half-assed reaction. Arizona's new law does not address the H1-B visa, which should have never been passed. The reason for that is the "labor shortage" it was supposed to address NEVER actually existed in the first place.

Comments [0]

Surprise! RentACoder.com ranks me in the top 3%.

Well, no, maybe you shouldn't be surprised.   I have been programming computers since age 11, and I really love the work, especially when it's all about Linux!

Here's the surprise:  I have only done five jobs on RentACoder.  Five jobs in four years.  Not a lot.

Why so few?  Because most experienced software developers in "mature economies" like North America, Europe, Japan and Austrailia get brutally outbid by people in extremely low-cost countries.  Or put another way, small-time outsourcing.    Or instead of 10,000 full-time jobs all at once, thousands of little one-off projects going overseas individually.

I don't spend much time on RentACoder, obviously because I have an easier time finding fun side work elsewhere.  RAC has a feature where a buyer can "invite" developers to bid on something, but most of those invitations are worthless to me.  They want me to do something with Windows (me, hahaha!), or search engine optimization, outright scams/spams, and stuff that at least twenty million Indians have already been trained to do.

What surprised me was that after such a small track record, RentACoder has ranked me 7,025th out of 273,839 coders, or "higher than 97.43% of their peers".  This results in my RentACoder profile being adorned with the TopCoder badge. 

And they never told me. I just stumbled on it, because someone actually sent me a rare interesting-looking bid request.

Maybe RAC is worth a little more attention.

Comments [0]

The best way to type in Spanish

As a student of the Spanish Language, this topic keeps coming up. Forget all the Alt-XXX stuff: Life's too short!

On Windows, the best way to type accented characters is to change your "keyboard layout" to US-International.  See Microsoft's Guide to Keyboard Layouts. Then you use the single-quote key before your vowel to make your accents: 'a=á, 'e=é, 'i=í, 'o=ó, 'u=ú. Then you can use ~n to make ñ.

There is a similar setting for Linux (both KDE and Gnome) under Regional/Languages that makes the keyboard behave the same way.

On a Mac, you use Option-E, then a vowel to make á, é, í, ó, ú. For ñ, you use Option-E, then n.

Comments [0]

Brass Band Competition in the morning

I'm in Louisville, KY today and tomorrow (April 3rd and 4th) for the North American Brass Band Association in downtown Louisville in the historic Brown Theater and Brown Hotel. (315 West Broadway, Louisville, 40202).

Today, my father and I drank in about as much brass solos and small ensembles as we could fit in!  8 hours of awesome performers from around the country!  (Yes, our Canadian bandmates are always welcome, but this year none of them came!).

In just 13 short hours, my band, Sunshine Brass will take the stage at the Brown Theater, and blow the roof off the place! 

I'll post the results at the band's website when I return to the hotel room!

Comments [0]

Have you ever crashed Javac?

I did -- tonight...

 

I didn't know (until Eclipse's QuickFix feature suggested it to me about a week ago) that this is valid:

for (@SuppressWarnings("unused") String fieldname : fieldnames) {
// some block where I didn't use 'fieldname' --
// I was more interested in doing it the right number of times, but without a counter variable
}

This works on Java 1.6.0_10-b33 as provided by Debian/Ubuntu.

But on Solaris Java 1.5.0_06-b05 (where my product has to be built every night) this was (apparently) an invalid place to put a @SuppressWarnings annotation. Makes the compiler barf:

[javac] An exception has occurred in the compiler (1.5.0_06).
Please file a bug at the Java Developer Connection
(http://java.sun.com/webapps/bugreport) after checking the Bug
Parade for duplicates. Include your program and the following
diagnostic in your report. Thank you.
[javac] java.lang.AssertionError: {unused}
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.visitArray(TreeMaker.java:634)
[javac] at com.sun.tools.javac.code.Attribute$Array.accept(Attribute.java:124)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.translate(TreeMaker.java:637)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.visitCompoundInternal(TreeMaker.java:628)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.translate(TreeMaker.java:641)
[javac] at com.sun.tools.javac.tree.TreeMaker.Annotation(TreeMaker.java:649)
[javac] at com.sun.tools.javac.tree.TreeMaker.Annotations(TreeMaker.java:570)
[javac] at com.sun.tools.javac.tree.TreeMaker.VarDef(TreeMaker.java:554)
[javac] at com.sun.tools.javac.comp.Lower.visitIterableForeachLoop(Lower.java:2892)
[javac] at com.sun.tools.javac.comp.Lower.visitForeachLoop(Lower.java:2755)
...etc ...

The bug is described here and it's been fixed in a later version.

 

This is the fix (since there's no way we're going to push out the fixed compiler on dev/test AND production by March 31, which is when I would need it.

for ( String fieldname : fieldnames) {
// same old block
}

All that over trying to suppress a warning...

Comments [0]

Data loss: a universal experience?

Tonight, I was at band practice, working hard on our contest music, and out of the blue, our director Jim called out: "Who here has lost a hard drive?"  He happened to lament on his Facebook page about losing a drive, so I wasn't surprised that it was on his mind.  I was only surprised he chose to bring it up in front of 30 talented musicians during rehearsal.

Jim knows that I work in computers, because I host his personal website, that of the band, and a couple others.  Before anyone could respond, he re-targeted the question at me, personally.  "Tim, have you ever lost a hard drive?".  I immediately blurted out, "No!"  Incredulous, he shot back, "Never, in your whole life?"   The rest of the band started to laugh, and maybe there was a jeer or two.   Normally, most computer users have just one hard drive, and when it fails, they lose stuff.  Tax returns, baby pictures, email, and in Jim's case, maybe painstakingly composed (and really amazing) brass music scores.  I just assumed that I was being asked if I had ever lost any DATA.  But no, Jim had asked if I had ever lost a DRIVE.  "Well, yeah, of course... DRIVES go bad all the time, but I don't lose DATA... Ever."

Another guy called out the name of a widely-advertised remote backup solution that

  1. probably only works under Windows,
  2. definitely costs more than a backup hard drive, and
  3. sprays your data across the internet to a remote datacenter with a bunch of other peoples' backups, where it sits as a very tempting target to all the hackers and business competitors out there,and.
  4. is probably staffed by over-confident twenty-somethings with less than 5 years' experience but somehow have "Senior" in their title).  

I pointed some of these things out, again, to guffaws and more laughter.  I pointed out that losing a hard drive doesn't have to mean losing data, but you have to take charge of your zeroes and ones, install mirrored drives, and take every opportunity to copy stuff around to systems you control (especially when you can automate it with tools like cron). 

I have a whole boatload of little techie rants like this, and I am used to rattling them off as needed, but my bandmates hadn't heard any of them before.  It felt like the most helpful and natural thing in the world to share my experience and knowledge, yet I felt like I made a spectacle of myself in a room where probably a third of the people have AOL email addresses (but are otherwise fun and intelligent human beings). 

Anyway, it was over before I knew it. We got back on task, working on the difficult sections of the music that do need attention.  But I started thinking to myself, "Why were they so unwilling to believe me?"   It is often hard for me to relate to ordinary people's conceptions of computing for (more than) a few reasons.  The most obvious reason is that I don't use Windows, except when I am forced to (and fortunately that only means Outlook/Exchange at work).  Most of the rest of the reasons are because as an applications developer, for all of my adult life (20+ years) and most of my teens, I have used a lot more kinds of systems than even exist today, and I understand what goes on at the very lowest levels of the system. Big surprise, everyone already knows I am a major-league geek.

"Am I really that fanatical about backups?  Why is that?"   When I try to remember what data I have ever lost, I really have to go back to my teenage years (starting at age 11), when my systems were home computers (mostly Ataris) that used the family TV and used audio cassette tapes for  storage.  I didn't own a floppy drive until I was 16, and no hard drives until I was 18.  These cassette tapes, in particular, were extremely unreliable devices, much more so than any hard disk I have ever encountered.  These tape drives basically recorded and reproduced sounds similar to 300-baud modems.  I even remember that the documentation even recommended that the user keep two parallel sets of tapes (always save to two separate tapes).

With that rough sort of initial introduction to early computers, I guess what I am saying is this: As technology improved, I never did develop a trust in a single storage device to hold important data, because of the primitive hardware I started with.  From the very beginning, I saved to parallel sets of audio tapes.  I kept two or mor copies of most of my floppies, and when I got  into PCs with MFM/RLL hard drives, I always had my stuff copied and spread around multiple systems  too. Nowadays, I have remote VPS systems that are redundant hot-backups of each other, multiple mirrored drives under Linux, and lots of external USB drives.

I teach my son the same thing:  he saves all of his important data to a mirrored NFS drive on my main programming server, on the other side of the house from his room.  My wife, fortunately, only does email, and that is all server-based (timjones.com uses Google Apps, which includes GMail For Domains).  Even there, I back up her Google-hosted email to my Linux system using Fetchmail.

SSDs (Solid State Disks) are starting to appear in the stores, and the strongest recommendation from Linus Torvalds is for the SSDs made by Intel.  I don't own any yet, but when I do, there will be two, set up as a mirrored pair.  Neither will ever be the sole copy of anything, not even with such a great endorsement. Just not gonna happen!

Call me paranoid, sure, but I don't lose data.  You don't have to either.

Feel free to comment below. I read blogs all the time, but I haven't posted a lot yet.

Comments [0]

Merry TUBA-Christmas to you, too!

I just had myself a whale of a great night in Zephyrhills, Florida (according to my wife, our local version of Mayberry (from the Andy Griffith Show).

Tonight, Captain John Wheeler organized the 3rd successful TubaChristmas in that charming gem of a town (in Clock Square), and I had the great fortune to be able to participate with 22 other Tuba players (my idea of "heavy metal"). Afterwards, my family and I walked the downtown streets, which, although closed, were still wonderful due to the elaborate old-time display windows with animated figure and falling (fake) snow

.

I got to meet some cool musicians I hadn't met before, some that I hadn't seen in a few years (like Mary Harvey from Wesley Chapel HS who graciously stepped in our as conductor at the very last moment). A new friend of mine, Glenn Weatherley, who I am playing with in a new brass quintet, also came and played. I am proud to say that I got my father, Jack Jones to dust off his tuba skills and make a respectable showing too!  Finally, I got to answer some questions about the Sunshine Brass (mostly to prospective new players). Capt. John took a picture that I will post here in a day or two when it arrives.

Really special nights like this remind me how lucky we are to be alive, healthy, employed and with friends and family. Sometimes all the bad news can cloud that up, but remember, we're all better than that. Chin up!

Comments [0]