Winning the War at Home

August 8th, 2008

GoBigNetwork posted the question Thursday “Are you Winning the War at Home?”. I think they said it best with

more than 50% of the decision to stay at your startup lies with the spouse at home

I consider this a key question to startups, especially early stage startups where the employee count is low. While all of the points in the post are dead on, I think they missed a key point.

The CEO should be genuine, and genuinely concerned with the employees family

I’ve seen a couple of situations where the CEO, or members of the management team had tough messages to deliver to the employees, and were able to do that because they were genuinely concerned about the families of the employees. While the employees get a dose of Kool-Aid daily, the spouses are generally more immune to spin, and are more skeptical. Genuine concern tastes much different than spin, and will keep key employees out of the dog house for a significant amount of time.
Just my .02.

Go by Bike - You can do it

August 6th, 2008

I’ve been biking to work since 28-May-2008, nearly every day. I procrastinated for several weeks before that, giving excuse after excuse about why I couldn’t bike to work. Here are some of the most popular:

  • No Showers at work
  • Too many hills
  • Dangerous traffic
  • I’m not in good enough shape

Read the rest of this entry »

Best Buy offers Linux on laptops

April 10th, 2008

While browsing the blog of a fellow penguin lover, I noticed his latest post. Apparently Best Buy is offering Linux on laptops now. Links and images are posted over on Vincent’s post.

Installing Adobe Flex Builder Linux Public Alpha on Fedora 8

April 10th, 2008

I’m embarking on a little Flex development, but I ran into a snag installing the Flex Builder into my *very* stock Fedora 8 system. I found a link to some comments here in follow up comment to the author of the post.

Apparently (and I’m not an Eclipse expert), the problem stems from Fedora’s choice of “Eclipse Europa”, rather than “Eclipse Classic”.

Problems:

  • The install says “Choose an existing Eclipse 3.3 or higher root folder to be extended with the Flex Builder Plug-ins”
  • Adobe Flex Builder 3 Message requesting root folder

  • An error message is displayed when you select the correct folder
  • Error message displayed when correct folder is selected

The installation proceeds fine from that point, but the Flex project isn’t available in Eclipse. As it turns out, you need to copy some files by hand:

cd ~/Adobe_Flex_Builder_Linux/
cd com.adobe.flexbuilder.update.site
sudo cp features/* /usr/share/eclipse/features/
sudo cp plugins/* /usr/share/eclipse/plugins/

And that’s all there is to it - you’ll have access to the Flex Projects in Eclipse. I’ll update this post if I find any problems with this method of patching the installation

Update: 13-Apr-2008

The above works great for *creating* a flex application, but it will not compile. There is an error generated that says:


Flex 0.0 (1): Flex SDK location "/home/.../configuration/org.eclipse.osgi/bundles/159/1/.cp/devsdks/moxie" does not exist.

I struggled and struggled to find the elusive “moxie” plugin. Alas, It was not found on my computer, or in any of the jar files. It turns out you need to download the “Adobe Flex SDK” from the “Stable Builds” section of (Adobe Wiki link):
http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3

  1. Download the file
  2. unzip it into a directory
  3. In Eclipse, Window->Preferences->Flex->Installed Flex SDKs->Add the directory you just created
  4. Delete the other installed SDKs for moxie (Flex 0.0)
  5. Enjoy!

I hope this helps someone
If you want to test to see if your installation works, add the following between the mx:Application tags in a Flex project


<mx:Canvas width="100%" height="100%">
<mx:Label text="Hello World"/>
</mx:Canvas>

Spidey Sense 101 - Predicting and Preparing for Layoffs

February 12th, 2008

How to predict and prepare for layoffs
(Originally prepared for BALU Barcamp/LUGFest ‘07)

What?

This post deals with identifying the organizational behaviors that *may* lead to layoffs. This post may be a wake up call for some. Hopefully, most in the audience will breath a sigh of relief that their current employer doesn’t have these traits.

These traits were observed from within the development / IT arm of various companies, so that is the point of view expressed. Many of the items below are valid regardless of the size or ownership of the company. I’ve just observed them in these contexts.

Small Public Company

Feature creep
Product features continue to grow, even as you’re trying to get to deployment. This generally stems from a deep seated feeling of inadequacy in management. Features are added in hopes that a product without much of a chance will pull through.
Theory over Practice
Less credence is given to pragmatic practices than is given to more “pure” practices. Speed to market is sacrificed, and the only benefit is structure that the customers will never see.
Contractors have “core” knowledge
All organizations must use contract labor these days. A good sign that problems lie ahead is when this is taken to the extreme, and the core business knowledge lies mostly with contractors.
An organization that’s resistant to change
Organizations engaging in product development these days must embrace change. Decisions *must* be re-evaluated (within reason) occasionally. New models of management are required to attract and motivate the fresh ideas required to capture market share.
“Updating the DR plan”
Be wary when the boss asks you for all of the passwords you know, because they’re “Updating the DR plan” to ensure compliance. It’s probably too late to start saving money, but certainly an indicator to update your resume
No Conferences
A good sign the company is having financial difficulties is the reluctance to send anyone for professional development. Usually the main reason against it is an even bigger sign - “We can’t spare anyone for that long”. Asking for professional development is also a good way to test the waters.

Large Private Company

Radical growth in personnel (mostly contract) for a new project
As mentioned earlier, feature creep requires more bodies, which ends up producing lower quality code, and increasing maintenance, needing more bodies, etc…
Customer “Partnerships”
Translation: “The customers won’t spend real money, so we’re trying to get them to spend man hours implementing our stuff, then they’ll have to spend money next year”
High profile customers simply vanish
Be wary when names of customers you heard in every meeting last month are not even mentioned this month.
Lots of new contractors and vendors
Contractors and vendors won’t tell the teacher if you’re cheating on the test. Are all of the new contracting companies new? If so, why did the ones you’ve done business with before decide they couldn’t help you? Most contracting companies pull from the same pool of developers, but the ones you’ve had relationships with should have developers that at least know the ropes in your company.
Security guards show up
When there are security guards at all of the entrances, and there haven’t been any bomb threats, it’s a good sign that downsizing is around the corner
New badge readers and security turnstiles
If the main entrance now looks like you’re entering Folsom Prison for no apparent reason, ask your co-workers for any money you’ve loaned them
New boss you’ve never met
When there’s a new boss, and he’s not interested in meeting and knowing everyone personally, watch your back. It’s much easier to fire someone you don’t know, than it is to fire someone you do.

Large Public Company

Acquisition
When one company buys another, most times they’re counting on some payroll savings to make the quarterly numbers. Sure, there may be talk of “synergy”, but they’re also looking to cut the payroll.
“Change of Control” Notice
This is a fancy term for “We’re about to do something drastic, but we’ve got to let our $%&*$ investors know”
Stock price goes up, but you don’t know why
Usually, the people in the trenches have a general idea when the company is making lots of money. If the people in the trenches wonder why the stock is going up, it’s probably a good time to turn your company stock into cash, as all of that new “revenue” might just be an apparition

But, it will never happen to me!

Technical prowess is seldom the selection criteria for who stays in the saucer section
Politics (duh!)
Salary (remember that big raise last year?)
Region
Duplication of function with someone in the acquiring company
Stay on good terms with the customers
Your customers (especially if you’re a software organization) can insure your employment with a complimentary E-Mail to management. The opposite applies too.

How do I protect myself?

Diversify
It’s dangerous to have friends at only one company. Most jobs are not advertised, and an internal recommendation is frequently the deciding factor when hiring.
Network
Join technical organizations, and go to the meetings. You’ll learn stuff and meet people.
This is not marriage
You’re not married to your employer. Most states are “at will” employment states, so either party can call it quits at any time. Side projects are not adultery, feel free to experiment where ever you can. Make sure those pesky agreements you signed pre-employment don’t lay claim to all of your thoughts, both in and out of work, though.
Save some money
I know it’s hard to put money back, but it’s much harder to get by when you have no paycheck. Be prepared to live (leaner, but still live) 3-6 months without a job
Draw a hard, black line
Keep work stuff at work, and personal stuff at home. If you end up unemployed, you’ll be able to rest assured that there’s nothing on your work laptop that you need.

One Server Per Child = Bad

November 14th, 2007

Developed countries, and corporate America specifically, are pushing mountains of electronic waste (E-Waste) on developing countries. As the push for better and better performance, newer hardware with higher capacities continues, the discarded machines are being illegally unloaded on developing countries.

In 1989, the Basel Convention on the Control of Transboundary Movements of Hazardous Wastes and their Disposal was adopted in Basel, Switzerland (the Basel Convention). The Basel Convention originally banned only hazardous waste exports to Antarctica, but has since (in 1992) succeeded in a ban of hazardous waste exports from developed countries to developing countries. In 1992, the amount of electronic waste, while significant, wasn’t nearly at the level that it is today.

Prestigious news organizations have covered the trend. This BBC article from 1996 lists some staggering numbers: “50 million tonnes of old PCs are thrown away each year” - “500 tonnes coming in daily” (to Nigeria) - “Children risk their health stripping components from the old PCs”.

So, if it’s illegal to export hazardous waste to developing countries, how does all of this “junk” get out of the developed countries? Apparently, there are unscrupulous agents who list the hardware as “used computers”. This guise of “used computers”, which implies that the hardware is useful, gives them a convenient loophole to dump the junk on developing countries. There’s no infrastructure in place in the USA, and probably not in Europe either, to *really* classify each and every system as past it’s useful life or not.

E-Cycling events are happening all over the USA. Many of these events yield multiple truckloads of castoff hardware - CPUs, monitors, disk drives, keyboards, etc - mostly from individuals. The volunteers in these events typically try to cherry pick the useful systems for non-profit and charity organizations before they make it onto the truck. While this recycling of useful systems helps the non-profits and charities, it insures that the percentage of useful systems on the truck is diminished. Nearly all of these systems will find there way onto a cargo ship to a developing country.

As the IT infrastructure turnover in America fuels “Web 2.0″, ERP and large database deployments, the same loading docks that accept the new hardware usher the old hardware out the door. The trucks take the castoff equipment away, not to new, green recycling centers that capture the raw materials and protect the environment, but to waiting cargo containers with destinations like Africa and Asia. The cocktail of toxins contained in this cargo will most likely remain there, contaminating ground water and food supplies for years to come. Corporate America is generally careful to remove storage devices from the computers to protect their precious data, but seldom does anyone ever consider the deadly toxins that still remain in the box.

When the hardware arrives at it’s destination, it’s sometimes scavenged for useful parts. But, this scavenging is not overseen by the EPA, it’s done by children and the poor, who need the $2 a day to pay for basic necessities. This $2 a day is a high price to pay for the increased risk of cancer and heavy metal poisoning that the toxins in these machine will cause. The list of toxins associated with old computers is long, and contains substances that have long since been controlled in America:

  • Lead in cathode ray tube and solder
  • Arsenic in older cathode ray tubes
  • Antimony trioxide as flame retardant
  • Polybrominated flame retardants in plastic casings, cables and circuit boards
  • Selenium in circuit boards as power supply rectifier
  • Cadmium in circuit boards and semiconductors
  • Chromium in steel as corrosion protection
  • Cobalt in steel for structure and magnetivity
  • Mercury in switches and housing

We won’t allow these toxins in our landfills, but don’t mind at all sending them to a developing country.

The next time you think about upgrading your computer, think about keeping it around for a few more months. Odds are, you just need web browsing and office applications. Avoid the “CPU envy” feeling when your friends upgrade. *Don’t* upgrade just because your Windows installation is hopelessly infected - find a local Linux enthusiast and have her load one of the more user friendly distributions. You’ll have similar applications, a more robust operating system, and you’ll be keeping a machine out of the landfill. When you do decide to upgrade, check out ecycling.com for information on how to responsibly discard your old computer.

Are your systems helping?

October 20th, 2007

A couple of weeks ago, I had occasion to buy an industry specific reference book. In typical impulse mode, I called my local bookstore Books-A-Million, and inquired about the book. I’m a big fan of Books-A-Million, mainly because they’re an Alabama company, and I live in Alabama. I like spending my money close to home, and have as much of it stay in the local economy as possible. Here’s the paraphrased dialog:

Me> I’m looking for a book, and I have the ISBN number can you look it up?
Salesperson> Sure - what’s the ISBN?
Me> 0-7-6-4-1-3-2-6-3-6
Salesperson> I show we have two on the shelf. Let me check for you
Me> (Puzzled) - I’ll just come down there and get it. Thanks.
Salesperson> Let me check for you. Sometimes they are not in stock. Let me check for you.
Me> (Puzzled) Sure.

Salesperson> I can’t find it on the shelf. Shall I order it for you?
Me> No. I’ll keep looking. I’d really like it today
<Hangup>

This exchange was repeated 5 times that day, with various Books-A-Million stores, with the same results until one of the stores found the book on the shelf.

In the midst of this search, I dialed the local Barnes and Noble, looking for the same book. This exchange was much shorter, since the inventory system showed they didn’t have the book. Total time: less than 1 minute.

Which store has systems that help? Obviously Barnes and Noble. Books-A-Million has an inventory system that is very ineffective, and is probably a harbinger of ill times ahead. Consider the following points:

  • Books-A-Million has to dispatch a representative to check to see if a book is on the shelf when a customer calls. That costs money. In our case, probably $2 per store for Books-A-Million, and $.20 for Barnes and Noble
  • Books-A-Million is most likely overstating their inventory. When creditors hear that their loans are less secured than they originally thought, they won’t be happy
  • There may be a theft or shrinkage problem at Books-A-Million
  • Companies or employees that are being hired to perform inventory may be causing more harm than good. Two weeks before I searched for this book, at least one of the stores had performed inventory. I know because I was there on the Sunday morning that they were taking inventory

In any case, Books-A-Million has a potentially serious problem with their inventory system, and needs to have it checked. This system isn’t helping at all, and is causing harm. It’s most likely causing employee problems, since the employees can’t rely on it. It’s certainly costing them money. I appreciate the willingness of the store personnel to check the shelves for me, but I’d rather them save us both time by having an effective and reliable inventory system. Once they have that, they can provide the information online, and I can find the closest book to my house and go pick it up, without bothering anyone.

Drive By Resume Harvesting, Compliments of Google

September 18th, 2007

My resume is on the web. Most of the time, however, I’ve asked the ‘bots to leave it out of the index. Recently, though, I’ve allowed the ‘bots to index my resume, and it’s generated a bit of harvesting action. Here’s the snippet from the weblog Actual Link Here:

210.245.110.78 - - [17/Sep/2007:02:56:34 -0400]
“GET /MyResume.html HTTP/1.1″ 200 4592 “http://www.google.com.vn/search?q=inurl:cv+%7C+
inurl:resume+%7C+inurl:vitae+%7C+intitle:cv+%7C+
intitle:resume+%7C+intitle:vitae)
+(%22Java+developer%22+%7C+%22C%2B%2B+developer%22)+
(C%2B%2B+%7C+Java+%7C+J2EE)+
(Linux+%7C+Unix)+-usa+-india+-C%23+-.Net+-PhD+-Ph.D+-CA+
-NY&hl=vi&start=80&sa=N”
“Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1)”

Which translated means:

210.245.110.78
This is the IP Address of the requestor. DNSStuff.com reports that this IP address is from Ho Chi Minh City, Ho Chi Minh (Vietnam). This is consistent with the Google site used for the search (www.google.com.vn)
[17/Sep/2007:02:56:34 -0400]
The date of the search
200
The webserver response. 200 is success
4592
This is the size of the document - my resume is only 4592 bytes. There’s an associated stylesheet, and that’s fetched right after the resume.
referrer field
The remaining information is the referrer field. This is how you tell what document the user was on when they clicked a link.

http://www.google.com.vn
This is the Google site in Vietnam. Looks like our visitor was from Vietnam.
/search
This is the search url - nothing special here
inurl:cv
Specifies a search where the URL fetched has “cv” in it.
+%7C+
the “+” symbol represents a space in URL encoding and the %7C is a “|” (bar) symbol. This construct means the previous search term is “or’d” with the next search term.
inurl:resume |
Specifies a search where the URL fetched has “resume” in it.
inurl:vitae |
Specifies a search where the URL fetched has “resume” in it.
intitle:cv |
Specifies a search where the title of the document fetched has “cv” in it.
intitle:resume |
Specifies a search where the title of the document fetched has “resume” in it.
intitle:vitae
Specifies a search where the title of the document fetched has “vitae” in it.
("Java developer" | "C++ developer")
Document text contains “Java Developer” or “C++ developer”
(C++ | Java | J2EE)
Document text contains “C++” or “Java” or “J2EE”
(Linux | Unix)
Document text contains “Linux” or “Unix”
-usa -india -C# -.Net -PhD -Ph.D -CA -NY
Documents without the words usa, india, C#, .NET, PHD, Ph.D, CA and NY

So, as you can see, the headhunters (at least the Vietnamese ones), are very proficient in Google searches. If you want to type in the text to the Google search box, here’s the text you’ll need:

inurl:cv | inurl:resume | inurl:vitae | intitle:cv | intitle:resume | intitle:vitae) (”Java developer” | “C++ developer”) (C++ | Java | J2EE) (Linux | Unix) -usa -india -C# -.Net -PhD -Ph.D -CA -NY

Enjoy, and now you’ll recognize the resume harvesters when they drive by your site.

Free Unix resources for Administrators and Developers

September 11th, 2007

Unix License Plate

I’m a member of a local Linux users group. Most of the members have Linux installed at home, and are happily learning how to use it, develop for it, or deploy it in a corporate environment. The reality of today’s computing environment is that there are still many Unix (AIX/HPUX/Solaris, etc) machines installed or scheduled to be installed, that require administration. Unix big iron pays the bills in may enterprise shops, and while Linux may get you in the door, Unix will keep the paychecks coming.

The barrier to entry for large Unix environments has the potential to be very high. Contemporary hardware is expensive, and the operating system and software are equally expensive. New System Administrators need access to the Unix OS to at least gain some knowledge about it’s quirks and capabilities. HPUX admins need to know SAM, AIX admins need to know SMIT. Everyone needs to know how to partition logical and physical volumes on their Unix systems.

Luckily, most of the large Unix vendors have test drive programs that allow access to many of their products over the internet, or even in the comfort of your own home. These are usually just a registration form away, and can provide access to OS, compilers, configuration, web servers and a host of other software. Below find links and capabilities of the programs offered by the large Unix vendors.

Read the rest of this entry »

Video Advertisements responsible for global warming?

September 11th, 2007

Think about it - when I navigate over to Digg and my processor utilization jumps to 100% because of the video advertisement, I’m burning more electricity than if there were a discreet text advertisement.

In addition to “lap warming”, this must be contributing to global warming as much as anything else (due to electricity usage). Flash advertisements seem to be the worst CPU offenders, especially those that have animated cursor tracking like the Sony advertisement on digg.com

Maybe it’s because I’m using Linux or maybe it’s Firefox - either way I’ll be looking around for a flash video / flash advertisement blocker later today.