Quality Programmers

5Stars

Here comes the Sun...
Messages
37,998
Reaction score
17,216
CowboysZone LOYAL Fan
Sam I Am;4572006 said:
Some Cobol for you.
Code:
DO-FIRST.
     GO TO DO-SECOND.

DO-SECOND.
     GO TO DO-FIRST.

:laugh2:

:laugh2:

And around and around you go. And, to find that crap, you have to weed through a dump, find the location by reading the hexadecimal values of where the loop starts or the error occured, then look through thousands of lines of code to find out what the hell the fool who wrote the code was trying to do.

But, I got paid really good for it, and have a good retirement fund for the rest of my life. I do drink and take drugs because of it though!

:D
 

Hoofbite

Well-Known Member
Messages
40,893
Reaction score
11,620
Bill Wooten;4571798 said:
I've been shocked at the quality of resumes I see now when I interview technical candidates. I'm usually interviewing for architect level positions, so I put a higher premium on communication skills than I would an entry-level developer.

9 out of 10 resumes I get contain spelling or grammatical errors. When I see that, the candidate automatically has a hole to dig themselves out of. If they don't show the due diligence to get their resume correct, why should I believe they will do it for a client document.

The overall quality of candidates just seems to be declining.

Sometimes people can't see their own mistake because they read it as they intend for it be read and now how it really is.

I had a typo on something a while back. Must have read it a hundred times but one look from another person and they mentioned the "s" I had in place of a "d".
 

5Stars

Here comes the Sun...
Messages
37,998
Reaction score
17,216
CowboysZone LOYAL Fan
Hoofbite;4572033 said:
Sometimes people can't see their own mistake because they read it as they intend for it be read and now how it really is.

I had a typo on something a while back. Must have read it a hundred times but one look from another person and they mentioned the "s" I had in place of a "d".

Yeah...now look again. You have another typo in this post alone!


:laugh2:
 

Reality

Staff member
Messages
31,336
Reaction score
73,385
CowboysZone ULTIMATE Fan
A "big" basic program :D

Code:
10 PRINT "H";
15 GOTO 60
20 PRINT "R";
25 GOTO 80
30 PRINT "O";
35 GOTO 90
40 PRINT "W";
45 GOTO 100
50 PRINT "L";
55 GOTO 110
60 PRINT "E";
65 GOTO 50
70 PRINT "!"
75 GOTO 10
80 PRINT "L";
85 GOTO 120
90 PRINT " ";
95 GOTO 40
100 PRINT "O";
105 GOTO 20
110 PRINT "L";
115 GOTO 30
120 PRINT "D";
125 GOTO 70

#reality
 

Kangaroo

Active Member
Messages
9,893
Reaction score
1
Reality;4572038 said:
A "big" basic program :D

Code:
10 PRINT "H";
15 GOTO 60
20 PRINT "R";
25 GOTO 80
30 PRINT "O";
35 GOTO 90
40 PRINT "W";
45 GOTO 100
50 PRINT "L";
55 GOTO 110
60 PRINT "E";
65 GOTO 50
70 PRINT "!"
75 GOTO 10
80 PRINT "L";
85 GOTO 120
90 PRINT " ";
95 GOTO 40
100 PRINT "O";
105 GOTO 20
110 PRINT "L";
115 GOTO 30
120 PRINT "D";
125 GOTO 70
#reality

I never liked the programing side that gave me flash backs to stuff we did in Computer Math class on a TSR 80
 

Bill Wooten

Well-Known Member
Messages
1,091
Reaction score
1,309
Hoofbite;4572033 said:
Sometimes people can't see their own mistake because they read it as they intend for it be read and now how it really is.

I had a typo on something a while back. Must have read it a hundred times but one look from another person and they mentioned the "s" I had in place of a "d".

I totally understand that, but it is your resume. You should have someone proof-read it. However, the issues I'm seeing are glowing red and green when I open their resume in Word. If Word can see a typo or grammar error and the candidate ignores it, that is a red flag to me.
 

Kangaroo

Active Member
Messages
9,893
Reaction score
1
Bill Wooten;4572054 said:
I totally understand that, but it is your resume. You should have someone proof-read it. However, the issues I'm seeing are glowing red and green when I open their resume in Word. If Word can see a typo or grammar error and the candidate ignores it, that is a red flag to me.

Then i am screwed my name comes up as one of those :eek:
 

Afigueroa22

Well-Known Member
Messages
1,307
Reaction score
470
I wish I could read the Matrix code like you guys. :(

They put a priority on setting programmers free.
 

5Stars

Here comes the Sun...
Messages
37,998
Reaction score
17,216
CowboysZone LOYAL Fan
Reality;4572038 said:
A "big" basic program :D

Code:
10 PRINT "H";
15 GOTO 60
20 PRINT "R";
25 GOTO 80
30 PRINT "O";
35 GOTO 90
40 PRINT "W";
45 GOTO 100
50 PRINT "L";
55 GOTO 110
60 PRINT "E";
65 GOTO 50
70 PRINT "!"
75 GOTO 10
80 PRINT "L";
85 GOTO 120
90 PRINT " ";
95 GOTO 40
100 PRINT "O";
105 GOTO 20
110 PRINT "L";
115 GOTO 30
120 PRINT "D";
125 GOTO 70

#reality


Hey, I've seen programmers code their programs in the most illogical way possible. :laugh2:
 

YosemiteSam

Unfriendly and Aloof!
Messages
45,858
Reaction score
22,194
CowboysZone LOYAL Fan
Nothing better than some obfuscated code. :D

Code:
#include <ncurses.h>/*****************************************************/
            int               m[256                   ] [         256   ],a
 ,b   ;;;   ;;;   WINDOW*w;   char*l=""   "\176qxl"   "q"   "q"   "k"   "w\
xm"   "x"   "t"         "j"         "v"         "u"         "n"         ,Q[
 ]=   "Z"   "pt!ftd`"   "qdc!`eu"   "dq!$c!nnwf"/**   ***   */"t\040\t";c(
int   u ,         int         v){                     v?m   [u]         [v-
 1]   |=2,m[u][v-1] &   48?W][v-1   ] &   15]]):0:0;u?m[u   -1][v]|=1   ,m[
 u-               1][   v]&         48?               W-1   ][v         ]&
15]   ]):0:0;v<   255   ?m[   u][v+1]|=8,m[u][v+1]&   48?   W][   v+1]&15]]
):0         :0;         u <               255   ?m[   u+1         ][v   ]|=
4,m[u+1][   v]&48?W+1][v]&15]]):0:0;W][   v]&   15]   ]);}cu(char*q){   return
 *q               ?cu   (q+         1)&         1?q   [0]               ++:
q[0   ]--   :1;   }d(   int   u ,   int/**/v,   int/**/x,   int   y){   int
Y=y   -v,   X=x         -u;   int         S,s   ;Y<         0?Y   =-Y   ,s,
s=-   1:(   s=1);X<0?X=-X,S   =-1  :(S=   1);   Y<<=   1;X<<=1;   if(X>Y){
int   f=Y               -(X   >>1   );;               while(u!=         x){
f>=   0?v+=s,f-=X:0;u   +=S   ;f+=   Y;m[u][v]|=32;mvwaddch(w,v   ,u,   m[u
 ][               v]&   64?   60:         46)         ;if         (m[   u][
v]&16){c(u,v);;   ;;;   ;;;   return;}}   }else{int   f=X   -(Y>>1);;   while
 (v   !=y         ){f   >=0         ?u   +=S,               f-=         Y:0
 ;v   +=s   ;f+=X;m[u][v]|=   32;mvwaddch(w,v   ,u,m[u][v]&64?60:46);if(m[u
 ][                     v]&         16)   {c(   u,v                     );
  ;   return;;;}}}}Z(   int/**/a,   int   b){   }e(   int/**/y,int/**/  x){
int               i ;         for         (i=         a;i               <=a
+S;i++)d(y,x,i,b),d(y,x,i,b+L);for(i=b;i<=b+L;i++)d(y,x,a,i),d(y,x,a+   S,i
 );                     ;;;         ;;;         ;;;               ;;;   ;
  mvwaddch(w,x,y,64);   ;;;   ;;;   ;;;   prefresh(   w,b,a,0,0   ,L-   1,S-1
);}             main(         int               V ,   char              *C[
  ]   ){FILE*f=   fopen(V==1?"arachnid.c"/**/   :C[   1],"r");int/**/x,y,c,
v=0         ;;;      initscr              ();               Z(Z         (raw
 ()   ,Z(   curs_set(0),Z(1   ,noecho()))),keypad(    stdscr,TRUE));w   =newpad
  (   300,  300               ) ;   for         (x=   255   ; x   >=0   ;x--
  )   for   (y=   255   ;y>=0;y--   )m[   x][   y]=   0;x=y=0;refresh( );while
  (   (c=                           fgetc (f)   )+1)                    {if(
0||c==10||  x==   256){x=0;y++;if(y==256  )break;;}   else{m[x][y]=(c   ==
'~'   ?64   : c   ==32              ?0:         16)   ;;x               ++;
      }}for(x=0   ;x<   256;x++)m   [x][0]=16   ,m[   x][   255]=16;for(y=0
;y<         256   ; y         ++)   m[0         ][y   ] =               16,
m[255][y]   =16   ;a=b=c=0;   x=y   =1;   do{v++;mvwaddch   (w,   y,x   ,m[
x][         y]&               32?   m[x                     ][y   ] &   16?
 0|   acs_map[l[m[x][y]&15]]:46 :   32);c==0163&&!(m[x][y+1]&16)?y++:   0;c
 ==   119         &&!         (m[                                       x][
 y-   1]&   16)   ?y--:0;;c   ==97  &&!(m[x-1][y]&16)?x--:0;c==100&&!(m[x+1
 ][   y]&   16)         ? x   ++:0              ;if(                    c==
 3-   1+1   ){endwin(   );;   return(0)   ;}x   -a<5?a>S-   5?a-=S-5:(a=0):
0;x               -a>         S-5?a<255   -S*         2?a               +=S
-5:(a=256-S):0;   y-b<5?b>L-5?b-=L-5:(b   =0)   :0;   y-b>L-5?b<255-L   *2?
b+=                                       L-5   :(b                     =256
-L)   :0;e(x,y);if(m[x][y]&64)break;}while((c=getch())!=-1);endwin();cu(Q);
printf(Q,v);}

EDIT: Damn word wrap! :mad:
 

5Stars

Here comes the Sun...
Messages
37,998
Reaction score
17,216
CowboysZone LOYAL Fan
Sam I Am;4572078 said:
Nothing better than some obfuscated code. :D

Code:
#include <ncurses.h>/*****************************************************/
            int               m[256                   ] [         256   ],a
 ,b   ;;;   ;;;   WINDOW*w;   char*l=""   "\176qxl"   "q"   "q"   "k"   "w\
xm"   "x"   "t"         "j"         "v"         "u"         "n"         ,Q[
 ]=   "Z"   "pt!ftd`"   "qdc!`eu"   "dq!$c!nnwf"/**   ***   */"t\040\t";c(
int   u ,         int         v){                     v?m   [u]         [v-
 1]   |=2,m[u][v-1] &   48?W][v-1   ] &   15]]):0:0;u?m[u   -1][v]|=1   ,m[
 u-               1][   v]&         48?               W-1   ][v         ]&
15]   ]):0:0;v<   255   ?m[   u][v+1]|=8,m[u][v+1]&   48?   W][   v+1]&15]]
):0         :0;         u <               255   ?m[   u+1         ][v   ]|=
4,m[u+1][   v]&48?W+1][v]&15]]):0:0;W][   v]&   15]   ]);}cu(char*q){   return
 *q               ?cu   (q+         1)&         1?q   [0]               ++:
q[0   ]--   :1;   }d(   int   u ,   int/**/v,   int/**/x,   int   y){   int
Y=y   -v,   X=x         -u;   int         S,s   ;Y<         0?Y   =-Y   ,s,
s=-   1:(   s=1);X<0?X=-X,S   =-1  :(S=   1);   Y<<=   1;X<<=1;   if(X>Y){
int   f=Y               -(X   >>1   );;               while(u!=         x){
f>=   0?v+=s,f-=X:0;u   +=S   ;f+=   Y;m[u][v]|=32;mvwaddch(w,v   ,u,   m[u
 ][               v]&   64?   60:         46)         ;if         (m[   u][
v]&16){c(u,v);;   ;;;   ;;;   return;}}   }else{int   f=X   -(Y>>1);;   while
 (v   !=y         ){f   >=0         ?u   +=S,               f-=         Y:0
 ;v   +=s   ;f+=X;m[u][v]|=   32;mvwaddch(w,v   ,u,m[u][v]&64?60:46);if(m[u
 ][                     v]&         16)   {c(   u,v                     );
  ;   return;;;}}}}Z(   int/**/a,   int   b){   }e(   int/**/y,int/**/  x){
int               i ;         for         (i=         a;i               <=a
+S;i++)d(y,x,i,b),d(y,x,i,b+L);for(i=b;i<=b+L;i++)d(y,x,a,i),d(y,x,a+   S,i
 );                     ;;;         ;;;         ;;;               ;;;   ;
  mvwaddch(w,x,y,64);   ;;;   ;;;   ;;;   prefresh(   w,b,a,0,0   ,L-   1,S-1
);}             main(         int               V ,   char              *C[
  ]   ){FILE*f=   fopen(V==1?"arachnid.c"/**/   :C[   1],"r");int/**/x,y,c,
v=0         ;;;      initscr              ();               Z(Z         (raw
 ()   ,Z(   curs_set(0),Z(1   ,noecho()))),keypad(    stdscr,TRUE));w   =newpad
  (   300,  300               ) ;   for         (x=   255   ; x   >=0   ;x--
  )   for   (y=   255   ;y>=0;y--   )m[   x][   y]=   0;x=y=0;refresh( );while
  (   (c=                           fgetc (f)   )+1)                    {if(
0||c==10||  x==   256){x=0;y++;if(y==256  )break;;}   else{m[x][y]=(c   ==
'~'   ?64   : c   ==32              ?0:         16)   ;;x               ++;
      }}for(x=0   ;x<   256;x++)m   [x][0]=16   ,m[   x][   255]=16;for(y=0
;y<         256   ; y         ++)   m[0         ][y   ] =               16,
m[255][y]   =16   ;a=b=c=0;   x=y   =1;   do{v++;mvwaddch   (w,   y,x   ,m[
x][         y]&               32?   m[x                     ][y   ] &   16?
 0|   acs_map[l[m[x][y]&15]]:46 :   32);c==0163&&!(m[x][y+1]&16)?y++:   0;c
 ==   119         &&!         (m[                                       x][
 y-   1]&   16)   ?y--:0;;c   ==97  &&!(m[x-1][y]&16)?x--:0;c==100&&!(m[x+1
 ][   y]&   16)         ? x   ++:0              ;if(                    c==
 3-   1+1   ){endwin(   );;   return(0)   ;}x   -a<5?a>S-   5?a-=S-5:(a=0):
0;x               -a>         S-5?a<255   -S*         2?a               +=S
-5:(a=256-S):0;   y-b<5?b>L-5?b-=L-5:(b   =0)   :0;   y-b>L-5?b<255-L   *2?
b+=                                       L-5   :(b                     =256
-L)   :0;e(x,y);if(m[x][y]&64)break;}while((c=getch())!=-1);endwin();cu(Q);
printf(Q,v);}

EDIT: Damn word wrap! :mad:


I quit! You can take this job and shove!


:laugh2:
 

Hoofbite

Well-Known Member
Messages
40,893
Reaction score
11,620
5Stars;4572035 said:
Yeah...now look again. You have another typo in this post alone!


:laugh2:

For some reason the iphone likes to guess just about every word I type.

Most of the time I don't even try to correct it.
 

Hoofbite

Well-Known Member
Messages
40,893
Reaction score
11,620
Bill Wooten;4572054 said:
I totally understand that, but it is your resume. You should have someone proof-read it. However, the issues I'm seeing are glowing red and green when I open their resume in Word. If Word can see a typo or grammar error and the candidate ignores it, that is a red flag to me.

That's why it's smart to save it as a pdf.........:D
 

5Stars

Here comes the Sun...
Messages
37,998
Reaction score
17,216
CowboysZone LOYAL Fan
Hoofbite;4572553 said:
For some reason the iphone likes to guess just about every word I type.

Most of the time I don't even try to correct it.

:laugh2:

I know, bro...aint no thang
 

Hoofbite

Well-Known Member
Messages
40,893
Reaction score
11,620
5Stars;4572556 said:
:laugh2:

I know, bro...aint no thang

trying to type in an email address when the first two letters are the same as mine is almost impossible.
 

junk

I've got moxie
Messages
9,294
Reaction score
247
perrykemp;4571723 said:
Our shop is primarily Java with smaller amounts of C#, C, C++, and Ruby mixed in.

We've also had similar issues finding good college graduates and a few years ago we shifted to dramatically increasing the number of interns we pull from local colleges. As a rule, they have to be no further along in school than being sophomores and it gives us at least 2-3 years to evaluate them, train them, and get them familiar with how development practices.

Before they graduate, typically 6-12 months out, we make the ones we like full-time offers and take-over their payments for their remaining tuition.

Overall, the process has allowed us, to a certain extent, to control our own destiny in terms of replenishing /expanding our developer staff.

We've actually been dipping into the the local high schools and trying to get the high performing math and science students to get interested in engineering/programming. We also do the college co-op/intern route.

It seems to be working pretty well.

We also hit all the college career fairs ourselves. Granted, we don't get many people with multiple years of experience that way, but you can find some good young candidates right out of school and, if you have a good training/mentorship program, it can be very effective.

I really like to find the candidates that have some real experience in college (actually worked on a project with deadlines.....robotics, UAVs, etc). Colleges have a ton of those competitions these days and the kids that worked on those have had to debug real issues and have had to meet real deadlines (on top of getting a degree).

It is also amazing how far good old fashioned work ethic will take you. Being able to discern that from an interview can be tough sometimes.

I would also think recruiting programmers in NYC would be a nightmare just because of cost of living.

If I was going to start a SW company, I'd set up shop in the Midwest next to a slew of solid engineering schools and recruit them heavily.
 

SultanOfSix

Star Power
Messages
13,065
Reaction score
8,359
I'm a coder (software engineer) myself. I focus mostly on Microsoft based technologies, e.g. C#, ASP.NET (Web Forms and MVC), Javascript, jQuery, HTML, CSS, etc. When I graduated college, I was mostly coding in C++ until .NET came around, so I was familiar with the more "difficult" aspects of coding, e.g. pointers, memory allocation and leaks, which I haven't really considered in a long time.

You can presume a coder is pretty good if they've done something on their own that they can show off. Although it isn't much - it's a Windows gadget - I've written some software that one can download for free. Also, even if a presumed coder has never actually worked with a set of concepts, if they can at least explain them logically and clearly and apply them to a contrived scenario, then it's a pretty good bet that they know what they're talking about. I've been working at the same position for the past three years as an independent contractor. Prior to the interview for the position, I was told that certain concepts were important to them which I had no practical experience with: TDD, IOC, DI, etc. However, prior to the interview I read up on, understood, and actually could explain clearly enough the concepts that the interviewer said he was so "refreshed" to hear someone actually know what he was talking about. My guess was he was in the same boat as you as far as the talent he was coming into contact with.

One other thing about good coders is they write elegant code making it an art.

Age doesn't matter either. I worked with a guy over ten years ago who was the chief architect of a small software shop at 19. He was one of the best programmers I've ever worked with. He was home schooled, and he took an interest in it and has been doing it ever since.
 

Reality

Staff member
Messages
31,336
Reaction score
73,385
CowboysZone ULTIMATE Fan
SultanOfSix;4572765 said:
One other thing about good coders is they write elegant code making it an art.

I have said this exact thing many times .. almost word for word too! :D

#reality
 

YosemiteSam

Unfriendly and Aloof!
Messages
45,858
Reaction score
22,194
CowboysZone LOYAL Fan
SultanOfSix;4572765 said:
One other thing about good coders is they write elegant code making it an art.


Reality;4572805 said:
I have said this exact thing many times .. almost word for word too! :D

#reality

My code is elegantly hideous. :laugh2:

I suppose if I had been actually trained in software engineering and did it for a living, my code would much higher quality. ...but that isn't the case and the world has to deal with my nasty code base! It's a good thing nobody actually cares about the stuff I write! :laugh2:

That said, are there any Python guys here? (my language of choice)
 

Reality

Staff member
Messages
31,336
Reaction score
73,385
CowboysZone ULTIMATE Fan
Sam I Am;4573156 said:
My code is elegantly hideous. :laugh2:

I suppose if I had been actually trained in software engineering and did it for a living, my code would much higher quality. ...but that isn't the case and the world has to deal with my nasty code base! It's a good thing nobody actually cares about the stuff I write! :laugh2:

When I was younger, I was a programmer for a company using old proprietary hardware, operating systems and an even worse programming language. The programming language was so limited, most BASIC languages would have been an upgrade and that is no exaggeration at all. Even worse, it was an unstructured language and the programmers of the original software as well as former programmers in the company had no consistent programming styles. It literally was spaghetti code. That "big" basic program I posted earlier in this thread would be a perfect example.

I worked there several years until I left to start my own company. A few years later, I get a phone call. The caller tells me he is a programmer for the company I used to work for. Now the first thing that entered my mind was, "Oh great .. he's calling me to ask me questions about programs I wrote long ago but have no idea about now." Actually, he was calling me to thank me. Apparently he had been given the assignment to modify the software used by a long-time client of theirs and it was written in the old horrible language that they had eventually replaced.

He said he was looking through the code and getting more worried he would never be able to figure out where or how to make the changes. Then he said he got to my code. He said it was line after line of garbled code, but then changed out of the blue to spaced out, well structured and documented code which included my name of course. He said the change took him a few seconds to make and since my elegant code had made his job so easy, he felt compelled to contact me and thank me for it! Needless to say, it made my day! :D

That being said, it is even better when your own design and documentation saves you that time and stress at some point!

That said, are there any Python guys here? (my language of choice)

Python is next on my list to learn. I have wanted to learn it for a while, but I just have not had any projects that required it so far. Learning a programming language without a project would be like learning French without ever talking with someone who speaks French.

#reality
 
Top