Open Side Menu Go to the Top
Register
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** ** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

03-31-2018 , 12:41 PM
Quote:
Originally Posted by kerowo
I thought I clarified this, we were talking about the position not the applicant. We were talking about the job description, we would have had the same conversation regardless of who brought it up. What I should have asked you is how many developers you hired to fill that job of developer/PM/scrum master/Product Owner and how many of them were right out of school.

I like that we all have different backgrounds and I am very aware of that when I chime in on topics you guys are talking about. Overly broad job descriptions happen everywhere and this one set off warning bells.

I'm not interested in trading shots with people in this forum, that's what Politics is for.(I'm doing the best I can with adios) If you think what I'm saying is wrong tell me why, I value your opinion, it doesn't need to be a tome unless I miss your point.
Actually this is bull****. Implying that I'm victimizing you in some way. Jeebus that is just pathetic. All I did was a quote a post of yours. You don't want me to post on TwoPlusTwo right? Wonder how many posters think you can do better thinking you aren't really trying hard at all?

Last edited by adios; 03-31-2018 at 12:50 PM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 12:49 PM
When you are hiring someone, you can come up with a industry standard job description that perfectly encapsulates the current meta for that job, and be incredibly rigid in requirements and responsibilities.

This is where you get stuff on the bad extreme like "10+ years of React/Redux required" when it gets to the recruiting level.

Sometimes there is a good reason for being incredibly specific in both the requirements and responsibilities (almost always when you are going to be billing out this role in some fairly direct way to someone else). This is your PwC and generic MegaCo ookie cutter approach.

When you are a small business and especially when you are a startup, hiring someone using that process is potentially really bad. One, you may not really understand what you need, just that you need someone. Two, you may have challenges that are related but that don't fit into a cookie cutter job description. Three, you want to be able to hire smart and talented people and give then flexibility to figure out what you need to do better.

So what you do is interview humans, figure out what their capabilities are, and you make up a job to give to them. Once jmakin starts, he's going to figure out which of those described things that he's going to need to focus on more. I see it as a list of current challenges that someone who is a captain of a boat and has dealt with high pressure situations can thrive in.

We are humans. We are adaptable. We learn. We improve. In the future if you are hiring an AI to do a job then sure, make sure the responsibilities are perfectly cookie cutter. But so long as you are hiring humans, you'll be creating a more successful environment if you hire based on what you need and what you think they are capable of. Just because this job description isn't some cookie cutter job description reminiscent of what you did out of school does not set off warning bells. It is exactly the opposite of that. Especially the fact they waited 4 weeks to get back to him. They thought deeply about what he could help them with, and what they needed, and they got creative and made a unique role for it.

It's hiring a person and not a role and I've done it many times.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 01:01 PM
Quote:
Originally Posted by adios
Actually this is bull****. Implying that I'm victimizing you in some way. Jeebus that is just pathetic. All I did was a quote a post of yours. You don't want me to post on TwoPlusTwo right? Wonder how many posters think you can do better thinking you aren't really trying hard at all?
Adios, what I meant was I think you're a conservative, misogynistic piece of **** and I view everything you say through that filter, however, no one in here cares about that so I try and not let it color my comments on your posts.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 01:04 PM
Quote:
Originally Posted by Larry Legend
When you are hiring someone, you can come up with a industry standard job description that perfectly encapsulates the current meta for that job, and be incredibly rigid in requirements and responsibilities.

This is where you get stuff on the bad extreme like "10+ years of React/Redux required" when it gets to the recruiting level.

Sometimes there is a good reason for being incredibly specific in both the requirements and responsibilities (almost always when you are going to be billing out this role in some fairly direct way to someone else). This is your PwC and generic MegaCo ookie cutter approach.

When you are a small business and especially when you are a startup, hiring someone using that process is potentially really bad. One, you may not really understand what you need, just that you need someone. Two, you may have challenges that are related but that don't fit into a cookie cutter job description. Three, you want to be able to hire smart and talented people and give then flexibility to figure out what you need to do better.

So what you do is interview humans, figure out what their capabilities are, and you make up a job to give to them. Once jmakin starts, he's going to figure out which of those described things that he's going to need to focus on more. I see it as a list of current challenges that someone who is a captain of a boat and has dealt with high pressure situations can thrive in.

We are humans. We are adaptable. We learn. We improve. In the future if you are hiring an AI to do a job then sure, make sure the responsibilities are perfectly cookie cutter. But so long as you are hiring humans, you'll be creating a more successful environment if you hire based on what you need and what you think they are capable of. Just because this job description isn't some cookie cutter job description reminiscent of what you did out of school does not set off warning bells. It is exactly the opposite of that. Especially the fact they waited 4 weeks to get back to him. They thought deeply about what he could help them with, and what they needed, and they got creative and made a unique role for it.

It's hiring a person and not a role and I've done it many times.
Yeah, I can see that. It's not really falsifiable though without making judgements about Jmakin that I have way of making. I can see why you thought I was attacking him.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 02:14 PM
I wouldn't say I thought you were attacking him directly or anything. But to me, you were attacking what it means to be human.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 03:28 PM
You may have poured more of yourself into your job ads than I've seen out here in Portland...
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 04:36 PM
You're both crazy people
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 06:01 PM
Quote:
Originally Posted by RustyBrooks
You're both crazy people
Hahahha +1. Y’all need to get a grip of yourselves!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 06:43 PM
Quote:
Originally Posted by jmakin
My two cents on this is that there is a distinction between software engineer and software developer, the responsibilities he outlined to me seemed more in line with an engineer
I'm not sure what you mean here - do you want to elaborate?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 06:45 PM
Quote:
Originally Posted by Larry Legend
I just find your worldview to be so incredibly different and counter to mine that it literally tilts me and it is taking extreme amounts of self control to not answer your posts in tomes, which is why I'm trying to just simply point out things I literally 100% to the absolute extreme disagree with. Such as the idea that when speaking about a job someone's "capabilities" are not relevant.
I'm closer to your side on this but this seems a little disproportionate, no?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:04 PM
Quote:
Originally Posted by candybar
I'm not sure what you mean here - do you want to elaborate?
I know the terms are used interchangeably and there’s a little debate but this answer made sense:

Quote:
The difference between software engineering and software development begins with job function. A software engineer may be involved with software development, but few software developers are engineers.

To explain, software engineering refers to the application of engineering principles to create software. Software engineers participate in the software development life cycle through connecting the client’s needs with applicable technology solutions. Thus, they systematically develop processes to provide specific functions. In the end, software engineering means using engineering concepts to develop software.

On the other hand, software developers are the driving creative force behind programs. Software developers are responsible for the entire development process. They are the ones who collaborate with the client to create a theoretical design. They then have computer programmers create the code needed to run the software properly. Computer programmers will test and fix problems together with software developers. Software developers provide project leadership and technical guidance along every stage of the software development life cycle.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:09 PM
Quote:
Originally Posted by RustyBrooks
You're both crazy people
Quote:
Originally Posted by Barrin6
Hahahha +1. Y’all need to get a grip of yourselves!
When it comes to the topic of hiring/firing/building people/etc I'm liable to completely go off the deep end.

I don't know why I feel so strongly about this but increasing human potential is the thing deep down I care the most about with no close second.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:21 PM
I have never heard of a tech company that distinguishes between engineers, developers, programmers like that. TBH that quote is kind of garbage. Its distinction between developer and engineer is essentially nonexistent.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:26 PM
Quote:
Originally Posted by blackize5
I have never heard of a tech company that distinguishes between engineers, developers, programmers like that. TBH that quote is kind of garbage. Its distinction between developer and engineer is essentially nonexistent.
The difference seems academic at best. I mean I think it's more or less true - when I was in college you could get a "software engineering" degree and it was not the same as a computer science degree, but the terms get used more or less indiscriminately in hiring AFAICT.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:28 PM
Quote:
Originally Posted by blackize5
I have never heard of a tech company that distinguishes between engineers, developers, programmers like that. TBH that quote is kind of garbage. Its distinction between developer and engineer is essentially nonexistent.
my title ends in engineer which is bs since all I do is use other smarter people's tools to make web apps. Of course "software engineer" is the easiest answer to the "what do you do" question right?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:33 PM
I looked at a ton of sources and forum debates and none really majorly disagreed much that on some level they’re different, just seemed kind of relevant to the discussion we’ve been having here
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
03-31-2018 , 07:35 PM
In any case it led me down a rabbit hole and i ended up buying $100 of “must read” software books last night
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-01-2018 , 06:23 PM
Quote:
Originally Posted by Larry Legend
When it comes to the topic of hiring/firing/building people/etc I'm liable to completely go off the deep end.

I don't know why I feel so strongly about this but increasing human potential is the thing deep down I care the most about with no close second.
I completely agree. I would far rather hire someone bright with lots of potential than someone who meets a rigid "X years development using language Y."

My own route into programming has been slightly roundabout, via a PhD in maths and followed by qualifying as an actuary. So I strongly disagree with very rigid approaches to hiring.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 10:40 AM
this is the most ridiculous "style rules" i have ever seen for any class, ever:

Quote:
One goal of this course is to encourage you to write very readable and modifyable code. An important part of achieving this goal is to have enforced style rules for coding. You can read Googles style rules here Google C/C++ coding style rules. We could have you follow those, but they are very long and more focused on C++, so here is the short version we will enforce in this course. Note these rules are simplistic, but that is to make them easy to follow and enforce. Judgement is required to know when a function is still comprehensible, but forcing you to keep them small goes a long way towards achieving this goal.

I’ve heard so many programmers say, “I just want to get it working and I’ll clean it up later” This is a path to failure that everyone must learn for themselves. As your code gets longer and more complicated, it gets more difficult to understand and more difficult to get correct. Taking a little time up front to keep your functions small and clean ultimately helps you write programs faster with fewer bugs resulting in you spending less time and effort to get a correct program. You can always make your code cleaner and shorter by inventing and writing more functions to do work for you. These functions should be given a single purpose and their name should clearly describe what this purpose is. Avoid creating function names that are meaningless like helper_function_1(), part1(), step2(), etc.

Here are the rules:
All function bodies (even main) should be five lines of code or smaller. Each statement counts as one line. Each for/while/do-while/if/switch counts a minimum of two lines even if the statement nested inside of them is empty.
The following do not count even though they take a line
function prototype, which gives the function name, formal parameters, and return type,
Lines containing nothing more than a curly brace,
Here are some exceptions:
Variable declarations with initialization, given in a group at the start of a function, no matter how many, only count as one line.
e.g., the following only count as one line even though there are really three lines.
int i = binary_search(key, array);
int k = i / 2;
int n = 0;
do-while statements: do { S; } while (); counts as one plus the count of lines of S inside the loop. e.g, the following counts as two lines of code
do
{
ch = getchar();
} while (ch != EOF);
if_else statments: the final else on a line by itself does not count, e.g., the following counts as three lines
if (a < b)
{
mid = a;
}
else
{
mid = b;
}
switch statements: are very different and must be counted differently. Count a switch statement within a function as three lines toward the function they are contained within. Then separately, limit each case within the switch to 5 lines per case. Each break or return in the case counts as one line, but the case tags (ie., case ‘a’: default: ) (no matter how many) all together count as one towards the limit for the case to which they belong. At most one switch statement is allowed per function.
Any empty statement, such as a loop body that is empty, must still count as one line, e.g.
while (*s++ = *t++) ; // still counts as two because the empty body is one
We will allow you to have 2 exemption functions per program with a length-limit up to 7 lines. For programs submitted for grading up through Week 6, we will also allow a third exemption up to 9 lines. You must label each as your exemption with the header comment right before the function definition. /* EXCEEDING 5 LINES BY 2 */ . After Week 6, the 9 line exemption will no longer be allowed and you can have only two 7 line exemptions per program.
DO NOT use the conditional expression instead of if statement to try to reduce number of lines. Only use conditional expression when returning the value or asigning the value to a variable to be used later.
DO NOT use the comma operator to combine expressions onto one line to reduce line numbers. Only use comma operator in for loops when doing multiple things in one of the three fields, e.g.,
for (int i=0, j=0; i <10 && j < 40; i++, j++) {….}
Nested statements should be indented by 4 spaces (avoid using tabs as they are hard wired to 8).
Curly braces should be one per line and should align vertically with the start of the statement they belong to and with each other.
Do not put comments on closing curly braces intended to show which statement you are closing, such as
if ( a < b )
{

} /* if */
Choose good names descriptive of the purpose of each function, parameter, and variable. The most common C style is all lowercase with underscores separating words. Library functions will often abreviate words and not use underscore separators, e.g., isalnum(c) for is_alpha_numeric.
When a variable or parameter may be any char, int, string, double, or function, it is fine to use a single letter names like c, i, s, d, or f, but the name of the variable should be consistent with the type of the variable, e.g., don’t use c for an int or s for a double. i,j,k,n should be int, s,t should always be a string, c,ch a char, d,x,y,z a double, f,g,h a function or function pointer, and so on. It is also common to add a “p” to the end of a variable that is a pointer, e.g., int * ip;
i kept the original formatting to emphasize what a buffoon this proff is.

this "style" is just ******ed. Having multiple excessive function calls to keep a main function down to 5 lines obfuscates the code, it doesn't make it easier to read.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 10:52 AM
Quote:
All function bodies (even main) should be five lines of code or smaller. Each statement counts as one line. Each for/while/do-while/if/switch counts a minimum of two lines even if the statement nested inside of them is empty.


I get that smaller functions are good. But this style guide is written a person who wants to micro-manage every line of code. I wouldn't even think about doing something like this to clueless offshore devs who need constant hand-holding.

Last edited by suzzer99; 04-03-2018 at 11:00 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 11:22 AM
you can "cheat" by making some function call another several functions that returns a value and you assign it to a variable.

so you can make 1 line be worth 40 lines of code plus 10+ function calls. that's not readable at all or very kind to the stack.

i can't think of a more annoying thing than to trace through 5 functions to find out what the **** they did in a variable assignment statement.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 11:24 AM
Smaller functions is a great goal to shoot for, and that's how you accomplish it. But absolutes suck. And 5 lines seems way too short.

I picture some poor programmer spending half a day trying to figure out how to break up a function that he could write with 10 lines of code in a minute.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 11:34 AM
i like small functions too, so i can test and make sure they work 100% the way i want them to so I rarely if ever need to look at them again, but 5 lines is lol. 10 lines would be ok for this class
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 11:53 AM
Lol I wonder if this is the same class and professor I took. 6 unit course?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-03-2018 , 11:58 AM
lol
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote

      
m