BUILDING PHILOSOPHY LIFESTYLE HABITS ADVICE CAREERS BUSINESS ENTERPRISE SELLING

What got you "hooked"?

367 words

Nothing interesting about my first story: I got a boring cubicle job in a large enterprise that needed 12 programmers to do anything, blah, blah, blah. But I did do some good work for a vice president who remembered me when he moved to another company, which leads to my second story, my real story:

He brought me in to his new company to do a consulting job to answer 2 questions, "What do we have to do to get Order Entry, Shop Floor Control, and Standard Costing written and running?" and "How many programmers do I need to hire?"

They had 400 employees, were missing all of these mission critical apps, and had only one programmer. But he was all they ever needed. I worked with him for 3 months and he wrote all of the software needed using tools and techniques none of us had ever seen before.

(#169)

What Matters Most to a Programmer

266 words

The longer I am a programmer, the more I realize that I love my job because of the actual work I do. Period.

I love the idea that people are trying to get things done, but need a little help from me to get them the tools they need. I love discovering with them what they need and how to get it to them. I love all that data sitting on disks somewhere begging to be used. I love all that data outside of any computer begging to be put on disk. I love the idea that I am master of a little universe that I can see in a 19" square right in front of me. I love manipulating important things, both complex and simple, with just little flicks of my fingers. And most of all, I love seeing something that came from nothing work for the first time. I did that! (Happy dance) Oddly, not much else matters:

I have worked in the most deplorable conditions at the most difficult times and hardly noticed when the work was good.

(#168)

Is programming hard work?

205 words

""He is dead, too much hard living!". Too much hard coding would be more like it."

Wow, those ones and zeros must have really been heavy!

Every time I see landscapers, construction workers, farmers, nurses' aides, or anyone in one of my customers' factories or warehouses, I thank my lucky stars that I was born when I was, I had an aptitude and interest in programming, and I found the perfect career for me.

(#167)

Why I Do Not Feel Like a Fraud

350 words

There were many times when something I did seemed too easy. So many times I'd listen to the user, understand their problem, and help them solve it with software. No big deal. Many of us have been doing that for years. Then the user would say, "Thank you, thank you, thank you!" "You're so much better than anyone else we've tried," or "This software is incredible! You should take it to market."

Or when I got compliments I didn't think I deserved. People called me "the smartest programmer I ever met," "brilliant," or "head and shoulders above the rest", and I knew it wasn't true, but accepted their praise anyway. And believe me, I'm not bragging, I'm just sharing experiences that many others probably had too. Others thought we were geniuses and we thought that we were just doing our jobs.

So why don't I feel like a fraud? Because I paid my dues. I may not the smartest or most gifted guy, and I'm certainly no genius, but I know I did the hard work.

(#166)

How do I become addicted to programming?

388 words

I think that your first step in becoming "addicted to programming" is understanding what building stuff really is: intense sprints of orgasmic discovery separated by long periods of building the prerequisites. Once you understand which phase you're in, you can better understand why you feel the way you do.

A perfect example was my project last week. I had to make 14 changes (including 3 major structural reworks) to an existing application to produce one additional output. This output was key for a fundamental shift in thinking about the use of the app.

My week was actually fairly predictable:

(#165)

Why do we lose our passion?

260 words

"So why is it that as we grow up we lose all the passion, the energy, the will and the strength to keep our dreams alive."

Because we lose so much energy in general.

Because we don't take care of ourselves.

(#164)

Why are languages so unimportant?

205 words

I am proficient in about a dozen languages, but only use 3. I go back to the SPS, PL1, Fortran, and COBOL days, and would rather chew razor blades than ever use them again. Today, I use javascript on the client and php on the server; I have yet to find a problem I couldn't solve with them.

In the years in between I discovered BASIC and have found it to be the Swiss army knife of apps. Not the old Dartmouth Basic, and certainly not anything Microsoft bastardized, but there are many other versions that seamlessly integrate with relational data bases that I think are a dream.

It's actually reached the point where I think in BASIC, design my app, and then sometimes write in in javascript or php.

(#163)

How does age affect programming?

168 words

Things I am worse at at 55 vs. 25: the 50 yard dash.

Things I am better at at 55 vs. 25: everything else.

Seriously.

(#162)

How much does age affect ability?

376 words

When I first started out I quickly rose through the enterprise ranks and was never taken seriously because of my age. As a wimpy looking nerd, I had always been underestimated by others and I found a way to use that to my advantage. When the time was right, I would just shoot them between the eyes with the right solution. My young age didn't matter.

Fast forward 30 years. I never notice age discrimination. It may be there, but I simply don't notice it. I think being in IT and in my 50's is a tremendous advantage.

(#161)

My Typical Day

117 words

I am running a marathon, not a sprint, so I frame my long working hours within a "healthy schedule". My typical day:

7:00 am - immediately start coding last night's plan, then email, headlines

8 to 9 - exercise

9 - breakfast & internet

(#160)

Are you glad you became a programmer?

382 words

One of the best decisions I ever made.

Is it "what I thought it would be"? I don't know. Because I had no idea what to expect. (I did my first programming on the job; I started before there was much opportunity to do it on your own.)

I have done projects at over 80 companies. I have gotten involved in almost every aspect of the business. I have travelled all over the country, met many interesting people (and friends for life), and have constantly been learning and doing. Oh, and I have earned far more than most of the people I have ever worked with. It wasn't unusual for me to be earning more than my supervisor and much more than my users.

(#159)

How much easier is it for an expert?

254 words

Layperson who's never seen it: "Impossible"

Practitioner who's becoming better: "Extremely difficult"

Expert: "We do this all the time. What's the big deal?"

(#158)

The Introvert Factor

197 words

There's one huge factor at work, for many programmers. I'm tempted to call it the "wimp factor", but that's too negative, so I'll just call it the "introvert factor". I'm a perfect example:

I was always small for my age and looked nerdy with my glasses and attraction to books, etc. I was always picked last for sports teams, drew little attention from girls, and was usually the first one to be bullied. It even happened in my own family. It was always easier to pick on the little guy to get what you want.

Fast forward to adulthood, and not much has changed, especially with bosses. It seems like my boss was always a sales/business guy, extroverted, and bigger than me. His/her natural reaction was to bully, probably because they knew they could get away with it. This was for almost everything: project management, discussions about work, and of course, money.

(#157)

What athlete are you most like?

279 words

Interesting question.

Reminds me of an argument between 2 great billiards players, Willie Mosconi and Minnesota Fats. Willie was the best player in the world at the time, winner of many championships. Fats was a hustler who never won anything except money. Each vowed to kick the other's butt in a match. Of course, Willie kicked Fats's butt, to which Fats responded, "So what. If there was money on the table, I would have won."

This article made me realize I am more like Fats than Willie. I have interviewed and worked with many great programmers, but hardly consider myself in their class. They may know 27 ways to sort data, but being like Fats, I only need to know one to get the job done (and take the money).

(#156)

Do you need to "sprint" to get things done?

417 words

Whenever I read a post about the sprint to launch, I think 3 things:

1. Great determination, great work ethic, great job.

2. It doesn't have to be this way.

3. It shouldn't be this way.

(#155)

Are young programmers better?

235 words

I've been programming commercially for almost 40 years and in all that time, I have found little correlation between age and ability to deliver quality software.

I have worked with younger, inexperienced, and uneducated programmers who were willing to learn, with minds like sponges and who were a pleasure to work with. They often found or thought of things the rest of us overlooked.

I have worked with younger, inexperienced, and well educated programmers who thought they knew better and were obstacles to progress.

(#154)

What's the advantage of working for someone else?

273 words

I have been in this situation many times before and always struggled with it. Until I figured something out:

"working in an internal IT department at a non-software company" can be a HUGE advantage.

Why? Because your "customers" are right there.

(#153)

Why is it so hard to find programmers?

491 words

"Why is it so hard to find programmers? Are people afraid of joining a startup?"

Let's not overlook the big differences between working at most startups and working at most companies:

1. Every programmer, no matter how good, is at least a little insecure. Every one of us doesn't know something. Is the something you don't know going to make or break the next project? In a startup, there's rarely a safety net to catch you, but in a larger company, there's probably a better chance that someone else can help you along.

(#152)

Is there anything good about my job?

190 words

What's good about it?

Every job, no matter how boring, is loaded with stuff that you can use to contribute to your long term progress.

It may be access to a user who's an expert in their field and would love to share their expertise.

(#151)

Becoming Senior

197 words

There's a chasm you have to cross to become "senior", whatever that means. One of the biggest skills you need to learn is not technical. That skill is understanding exactly how to apply our limited resources.

Should we worry about how well a certain module was written? Maybe, maybe not. Sometimes the answer really is, "It runs well and isn't hurting anything, so let's leave it alone. Opening up that can of worms dumps 47 new issues into our queue and now is not a good time to do that." Or the answer may be, "This has to be made right before we can add these 27 other things to the system or we'll all be in deep sh*t." How do you know which? Experience. Understanding the big picture. Understanding your customers and users. Understanding your dev team. You get the idea.

Taking on a lead role is not selling out if it's used to expand your horizons and make you an all-around better dev person. When you return to full time development, you'll be light years ahead of those who never had to manage the whole project. A little perspective goes a long way.

(#150)

What should an older entrepreneur do?

133 words

Pair their work ethic, real world experience, and life lessons with the passion and technical skills of a 20 something programmer.

I started my first business when I was 27. My cofounder was 41 and had done things I hadn't even imagined. He was so smart, so seasoned, and knew the ropes about so many things that he saved us both countless hours and dead ends. And I was able to do things he never had a chance to learn. We made a great team.

Now I'm on the other side of that relationship. And would love to do it again with someone in their 20's. I have a million ideas that come from years of real world experience and not enough time to act upon them.

(#149)

What's hardest about programming?

83 words

What a solitary task programming is.

This is the hardest thing for me to explain to others. And still one of the hardest for me to get used to myself. It takes a lot of time working alone to get anything done.

It may also be one of the many reasons on-line programming forums are so popular. I don't know about you guys, but if I didn't have this place to break up the loneliness, I'd probably go nuts.

(#148)

Where did you learn what you need to know?

82 words

- Mom, Dad, & family 10%

- kindergarten 5%

- elementary school 1%

- middle school 1%

- high school 1%

(#147)

Why didn't you pursue mathematics?

241 words

I left math for a totally different reason and I'm almost embarrassed to talk about it. A little background:

I worked full time through college and graduated with less than $100 in the bank. I had opportunities to go on to graduate school for either math or business.

Every professor in our math department drove an older subcompact except the department head who drove a Chevy Impala. Imagine, work your whole life, get to the top of your field, and drive an Impala!

(#146)

Should I keep my day job?

132 words

Yes. Here's why:

You get requirements from your daytime job.

This is so important that when I stopped moonlighting and went full time on my startup, I kept an outside client 2 days per week. Let me explain:

(#145)

How do you balance work with your SO?

175 words

If you really love her, then you already oughta know what's most important. (Most important, not the only thing.)

Her expectations are not really expectations. They are cries for help. Listen.

Some of the things we have done:

(#144)

Have you ever been burnt out?

221 words

I've been programming continuously for 30 years and I've never been burnt out. In fact, I'm having more fun than ever. I can't imagine doing anything else.

I have worked in 80 companies, either as a contractor or an employee. I have seen other scenarios play out many times. I have worked on the worst garbage code and dealt with incredibly nasty and incompetent people almost everywhere I've been. But I never let them beat me.

Only I get to decide how I feel about anything, especially work. When things have gone sour, which they almost always do, I have done everything I could to fix them, and when that wasn't enough, I've moved on. I've always felt that one of my biggest strengths was the breadth of my experience. I use almost all of it every time I do something.

(#143)

Why were you such a late bloomer?

291 words

"1955 was the best year for geek births"

For outliers, maybe, but for the rest of us, NO!

I was born in 1955, on the same day as James Gosling, inventor of Java.

(#142)

What do your parents think you do?

217 words

Dear Dad,

My customers are small business people (retailers, wholesalers, doctors, lawyers, etc.) who own computers that have replaced their file cabinets and some of their clerical employees. Those computers came with lots of stuff in them but need more as their business changes or they discover stuff they forgot. I upgrade their computers with the stuff they need. We call that stuff "software". They pay me. Well enough for me to buy you dinner Sunday night and take you to the Steeler's game. What do you say?

Love, Eddie

(#141)

Why are some programmers so condescending?

204 words

Condescending feedback says more about the speaker than the listener. It is almost invariably about their own insecurity. This is true is almost all fields of endeavor, not just programming.

Just a few examples of my own:

Insecure bridge player: The queen of spades was a stupid play. What's wrong with you?

(#140)

What are the biggest geek myths?

478 words

"1. Recognize that people will know you are a geek from the moment they meet you"

Assume nothing. If you're not sure about something, ask. Give the other person the benefit of the doubt at least once.

"2. Don't try to change people's preconceived notions of geeks"

(#139)

The Programmer's Aptitude Test

181 words

Don't scroll down until you're done.)

1. You push your cart through the supermarket

a. In a pre-defined manner

b. Randomly

(#15)

Little Known Development Methods

576 words

Garbage Perpetuation Development (GPD) - You can't believe how bad the existing code base is, but you're afraid to open a can of worms, so everything you add to it is written in the same style. For the rest of your life, you can say, "It was like that when I got here."

Mansion in the Quicksand Development (MQD) - The opposite of Garbage Perpetuation Development, you are so shocked by the poor quality of the existing code that you vow that you'd rather swallow razor blades that code the same way. So you write a tight beautiful refactored masterpiece that will crash as soon as the underlying database loses its integrity (later tonight).

Defer to the Framework Development (DFD) - You're not sure how to tackle quite a few critical design/architecture issues, so you convince your boss to adopt the framework du jour and decide to "let it handle it". As soon as someone needs something that the framework doesn't handle, you blame management for making such a myopic technology decision and say that it can't be done. You keep your job and get a new boss every two years.

(#14)

Tech books make you Good.  People books make you Better...
and
coming
fall
2017...
 
LERN
HOW
TOO
RITE
dont let bad riting hold u back
50 Documents
Every Programmer
Must Be Able to Write
ED WEISSMAN

All email answered.  edw519 at gmail
Copyright © 2017 Ed Weissman