Everyone has problems and would like solutions. Sometimes a solution is discovered and now there is a problem implementing the solution. In software development, you get this all the time. I’ve had people admit that they give requests in the form of a solution instead of providing a problem and letting someone come up with the answer. Sometimes they just think they know better.
Someone needs a website where they can enter a column of numbers and get a total. Seems simple enough. Any number of developers could start working on this project. The problem may be the solution.
The first step is to backtrack through the discovery of the website solution. You may have to ask a lot of questions since the user may not remember all of the mental gymnastics involved in this path of discovery. Start with the website itself. Why do we have websites and in particular what is it we like about them? What need do they fulfill. Do others need secure or unsecured accesss? Do you need to access this from different computers? Do you want to avoid installing software on multiple computers?
If none of these are a problem, a spreadsheet can be recommended using a locally installed application. Sharing may be accomplished by incorporating a website to handle files.
I use StackOverflow quite a bit. Often some answers/comments on questions are “Why do you have to do it that way?” or “Why are you doing that at all?” Techies are not known for their tact especially when speaking to other geeks.
A key point will be to ephasise trying to understand the problem better. There can be a point where there is no rational reason for an answer. Sometimes people just get fed up with the questions or they’re embarased that they don’t have an explanation, but just pull rank anyway. Expectations need to be managed here. Like the website request. You could ask if it is all right if it is slow? You won’t be able to have some features that you would find in Microsoft Excel. Is that OK?
As you work with people over time this usually gets better. Make sure you continue to read their reaction to your questions. If they feel you’re being to tedious, start with the project, but stop along the and pose the questions. Sometimes breaking the time up can help.
This was my first programming course. The biggest advantage was the instructor was a teacher and not just a programmer. There’s a big difference. A lot of people know how to do things, but not teach it. The draw back was the BASIC language does not take advantage of more robust and modern design principles like Object Oriented Design. Some say you develop bad habits that cannot be broken. You can’t change the way you do something if you don’t learn something different. There are so many bad habits that programmers have because the people in charge don’t make them do it right – that is another post.
In the class we had to share computers. My poor partner. I’m sure I hogged the keyboard. Since it was close to the holidays we had an assignment to make a multi-media Christmas card. Graphics on the Apple II were drawn one square/line at a time. You could do some loops and automate some of the drawing. There was a screen mode where you could have a graphic at the top and text at the bottom. I recall having the ability to have the text scroll across. This was where we put some greeting message. The image was of a fireplace with stockings hanging. I decided to take it a little further and have the fire animate. Using random numbers, I was able to get the flames to go up and down and alter the colors: red, yellow, orange. Pretty crude by today’s standards.
That project really pulled together everything we learned in the class. The professor was pretty impressed. It should have been an early warning that I should have taken my father’s advice and “got into the computer thing” much earlier than I did. Oh well, still no regrets.
Every programmer has a story on how they ended up developing in a particular language. You learn some in school. I had BASIC for the Apple II. That was pretty much my foundation. In graduate school I was exposed to FORTRAN on a miniframe. In my mind it was, I already know how to do that in BASIC, so how do I do that in FORTRAN?
Then I ended up in the real world with a real job with responsibilities and deadlines. There was some need to duplicate some of the prices for annuities we were importing to more than one code. I wrote a little app in FORTRAN that would scan the price file and create some additional records with the same price. Nothing to difficult until we upgraded out computers to Windows 98 and my app died. Seems the old Microsoft FORTAN compiler had some issues with the new version.
No time to panick. I printed my code and ran over to a contract programmer we were using. I had Visual Basic (VB) 4.0 on my computer. All I had to do was convert my code to the new language. With this guy’s help it worked out pretty good. I got to expand my knowledge of a new language. My code worked. We were back in business on getting our annuity prices; everyone was happy.
I never wrote another line of FORTRAN again. To this day I do a lot with VB in all of it’s various forms (VBA, VB.NET). I’ve looked at some of the newer languages like Python and Ruby, but my job requires that I do t-sql for Microsoft SQL Server. Hey, follow the money.
Went back to my home town, Gary, Indiana, to take my first coaching and teaching job straight out of college. Coaching was great. I went straieght into two-a-days observing the varsity for a week. Then began as the assistant freshman football coach. We had a talented team; this job was too easy.
As easy as the coaching job was and how much I enjoyed it, the fact is, that is not how I paid my rent. That required teaching. I found myself in a grade school class room for students with learning disabilities. Behavior problems are in this territory as well, but I was prepared. Not really – that’s what I thought.
Day 1: I don’t know what I’m doing. My students asked if I paddled. Of course I do not. I don’t believe in it. They informed me that the class would be chaos (that wasn’t the word they used). My fine teacher’s education had empowered me with the greatest of nurturing tools at my disposal.
End of First Grading Period: I know I don’t know what I’m doing. My supervisor is on my back and I have no intention of failing. Out to my father’s garage I went (The specifics are for another blog.). A plank from an old bowling ball floor held in a vice and a draw plane in my hand, I forged a paddle much like the baseball bat in “The Natural” sans the burned in lightning bolt.
Day 1 With My New Paddle – Not sure who the first victim was. Somone said/did something and I brought out the paddle. There was shock, awe, and jokes and laughs. The jokes went after I beat the first ass. God only knows the beatings these kids suffered. And there I was dishing more. Someone referred to the paddle as a “fingernail file”. Turns out after a few “filings” that kid ran out of the school the next time his turn was up. The other kids never let him live that down.
The class room impoved. The paddlings were less frequent and probabl during the last grading period they stopped. The school year was coming to and end. One student was able to claim that he was the only one who didn’t cry. I was more impressed by him when on time he very respectfully informed me that it was all right to call him “Son” but not “Boy”. I never did call him boy, and I don’t remember how it came up in conversation. I always respected him for that and thought it showed a lot of maturity.
End of the First School Year – my students seemed to like me. Why? In some ways I became just like their other teachers. I was a horrible teacher (OK, maybe I’m being a little hard on myself.). I always thought that I cared. Maybe they could see that. Up until now, I never realized that we never had a computer. I wish we did. There were some kids that would have been great at it.
I moved on to teach at my old high school. And never paddled anyone again.
Being the youngest child and arriving over 15 years after my parent’s marriage, I was subjected to career advice in a much toned down fashion than my siblings. Growing up in Gary, Indiana during the 70’s meant you saw the steel mills die a slow death. There was no hope of ever getting a job at the company that hired three generations of my family.
I have a positive look on this misfortune because it forced me to go to college and eventually get out (I did teach there for 3 years after college.). I really enjoyed playing high school football. I was intrigued by the strategy of the game. I often referred to it as Violent Chess. I had a brother-in-law who encouraged my brother and I to choose special education as our major since we both wanted to be teachers anyway, might as well pick an area where it would be easy for a male to get a job.
I don’t even remember when it happed. It was really unexpected. My dad just blurted out, “If I was a young man today, I think I’d look into computers.” Or something to that effect. My mind was set on coaching and teaching. I didn’t think it was a bad idea. It just wasn’t for me. I have no idea how I would know whether I would like it or not since I had no clue what it meant to work with computers. Maybe it was the idea of a desk job just sitting there doing the computer thing that turned off a 17 year old boy who had a small amount of athletic success. He didn’t have any comeback to my rejection. I guess he felt it was his duty to at least say something.
Well here I am. It took me 9 years after college to get into the computer thing. I guess father knew best.
It must have been my sophomore year of high school. Possibly freshman – doesn’t matter. My math class gets invited to see some sort of demonstration by the computer class. I guess they were promoting/recruiting. The teacher (One of many in my educational career who was in their last year of teaching before retirement.) gave some pitch about computers which had no impact on me.
There was one student in the class that was an aspiring hacker. Smart, really smart. Pale skin. Hair: long, a little messy and on the greasy side. In their demonstration code, he managed to slip in a line that made the computer “ding” eight times. Not necessarily computer genius by today’s standards, but it was the fact that he put it in there without the teaching knowing. She didn’t punish him, but let it be known that she was not aware of this. The little imp! Here was a kid who made an effort to learn something and had the balls to put it out to the public and say, “Look what I can do.”
That wasn’t me, but it in a way it was. That’s something I would do. If I either stumbled on something in my studies or was directly looking for a way to do something, I would look for a way to be able to make that statement, “Look what I can do.” That never happened because, I did not take the accelerated math. Didn’t take math my senior year. Avoided taking physics because I was certain the teacher was a homosexual. Many issues in a series of choices to underachieve. In time, I came around.