Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Infinotize
Sep 5, 2003

Source control should not eat up time in intro programming but it should be part of software engineering courses, of which most programs have ~1 class, which should probably be increased since it's the only software-in-the-real-world type class.

Adbot
ADBOT LOVES YOU

Tres Burritos
Sep 3, 2009

Infinotize posted:

which should probably be increased

Hahahaha tell a professor that.

facepalmolive
Jan 29, 2009

Tres Burritos posted:

Hahahaha tell a professor that.

Counterpoint: how many college professors would you trust to teach a course on software engineering?

Zero The Hero posted:

I've made an account before, but I never figured out how to do anything but use vim. I never really gave it a good try, though, because everything I've done recently has been something I couldn't really use github for, at least as far as I know, stuff like Android or ASP.NET that essentially requires an IDE.

On that note, what kind of projects could I pick up that would help me get a job? What would an employer like to see?

And as for whether source control should be part of a college degree or not, I see no reason why it shouldn't. My professors would modify our grade based on how nice our code looked, formatting issues that had absolutely nothing to do with computer science itself, the efficiency or functionality of the program. But it was incredibly important to programming as a vocation. I think source control is important for the same reasons, and in fact, is really part of the same idea.

Yeah um, everything you're describing as "source control" has everything to do with IDEs/formattings and nothing to do with source control. There are tons of Android projects on Github.

facepalmolive fucked around with this message at 04:19 on Jun 20, 2013

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Zero The Hero posted:

I've made an account before, but I never figured out how to do anything but use vim. I never really gave it a good try, though, because everything I've done recently has been something I couldn't really use github for, at least as far as I know, stuff like Android or ASP.NET that essentially requires an IDE.

What? Source control has nothing to do with IDEs or text editors.

You could learn this stuff for yourself by actually reading the documentation on github.com. You download the Github GUI tool for Windows and follow the instructions. Bam, your ASP .NET project is source controlled on Github. I'm a total Git novice and I was able to get a C# project on Github in about 10 minutes.

Failing that, download and install TFS Express. It's a lot "heavier" than Github, but it's incredibly easy to install and configure, and you'll get full IDE integration in VS2012 (even the free editions). There's even an Eclipse plugin for TFS.

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013

facepalmolive posted:

Counterpoint: how many college professors would you trust to teach a course on software engineering?

My school had two software engineering classes. The first taught us how to make UML diagrams, talked about some metrics for measuring engineer productivity, the difference between white-box and black-box testing, and some approaches to software development, like waterfall, different kinds of agile, etc. Except I had no idea what agile really was, because the lectures followed the book, and the book was pretty much like "Welp, none of these are very good, so you only need to know how waterfall works, but it's been said that this magical agile stuff is faster and less risky. Here's a couple of paragraphs on pair programming and :airquote: rapid iteration :airquote: to follow your three chapters of waterfall."

We also had a small project for which we wrote a set of requirements, design, etc. documentation prior to beginning our implementation.

The second course doubled as our senior project class, for which we had two projects. For the first, we applied the waterfall model (starting by creating requirement specification, design, etc. documents formatted to some IEEE standards) to existing, barely-working, poorly-documented projects from apathetic students from previous semesters, and for the second, we had to write 60+ page manuals and lesson plans to for highschool teachers in the area to use to teach programming or something.

Someone suggested we use an agile approach since that's what all the companies in our area use and the professor's stance was that if we learned something else, we wouldn't understand waterfall, but if we learned waterfall, we could understand all the rest because everything else was created after waterfall. :smithicide:

Safe and Secure! fucked around with this message at 04:32 on Jun 20, 2013

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Safe and Secure! posted:

We also had a small project for which we wrote a set of requirements, design, etc. documentation prior to beginning our implementation.

That's a good object lesson in why waterfall development usually ends in failed/over-budget projects. How far off from the "requirements" was the software you actually wrote?

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013
It was pretty close, actually. My partner and I chose some features to implement that would require the minimum amount of work we thought it would take for us to get an A and came up with requirements that corresponded directly to them.

I remember that the "design" document ended up being wrong, though, and we had to revise it a couple of times during the implementation stage.

RICHUNCLEPENNYBAGS
Dec 21, 2010

Ithaqua posted:

That's a good object lesson in why waterfall development usually ends in failed/over-budget projects. How far off from the "requirements" was the software you actually wrote?

This is less of a problem if the people writing the requirements are technically skilled, in my opinion.

Then again, my only experiences with "Agile" projects were actually traditional projects except someone said "poo poo, it's run over schedule, let's just skip the rest of the requirements gathering but proceed as though we hadn't" so maybe it really is more pleasant if you're actually doing it.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

RICHUNCLEPENNYBAGS posted:

This is less of a problem if the people writing the requirements are technically skilled, in my opinion.

Then again, my only experiences with "Agile" projects were actually traditional projects except someone said "poo poo, it's run over schedule, let's just skip the rest of the requirements gathering but proceed as though we hadn't" so maybe it really is more pleasant if you're actually doing it.

Yeah, that's not Agile. Don't call it Agile. I strongly recommend reading up on it and actually understanding what it means to do Agile development; it doesn't mean "waterfall, except we change requirements a lot and don't do any documentation". It seems like boring project managery type stuff, but it's a wonderful way to write software. I've worked for agile and non-agile shops, and as a result, part of any interview involves grilling them about how they run projects. If they aren't doing proper agile development, I don't want to work there.

evensevenone
May 12, 2001
Glass is a solid.
I feel like the entire point of program management / higher-level software engineering would be lost on college kids anyway. When you're learning to solve with a set of problems you haven't actually experienced yet, of course everything you learn is going to seem dumb and pointless.

Plus, it's stuff you are going to learn on the job, whereas if you don't learn say how a compiler works in an academic context, you probably aren't ever and I think that's a much bigger loss, even if it isn't 100% directly applicable to your professional life.

I'm really not a fan of turning CS or "software engineering" or whatever you want to call it into a vocational program that just teaches you how to churn out CRUD frontends in whatever buzzword is in favor this year, even if that's what the "industry" thinks it wants.

facepalmolive
Jan 29, 2009

evensevenone posted:

I feel like the entire point of program management / higher-level software engineering would be lost on college kids anyway. When you're learning to solve with a set of problems you haven't actually experienced yet, of course everything you learn is going to seem dumb and pointless.

Yeah, and many professors haven't experienced this stuff themselves either, which is why I think they're ill-suited for teaching these classes in the first place. But on the other hand, they kind of have to because a lot of CS students come out with very little practical ability or notion of how the world really works. I'd like to think it's growing pains; a field changing faster than the educational institutions can prepare for.

greatZebu
Aug 29, 2004

Software engineering is more of a combination of folk wisdom and popular culture than an academic discipline, so it's not a great topic for a college course.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug
I just had to "blacklist" my first-ever potential employer. Based on the recruiting experience I just had with them, I do not want to ever work for them.

Tuesday night, I got a message on Stack Overflow careers regarding a senior .NET dev/architect position. It sounded kinda interesting, so I responded and said "Great, I'll be available at 11 am tomorrow."
Wednesday 11 am passed without a call or communication. They never confirmed 11 am, so I figured "whatever, I'll let it slide"

This morning, I followed up just because I'm anal. Within 10 minutes, I got a call from the guy who emailed me. He's an internal recruiter for the company. My warning bells started going off like crazy. We set up a phone conversation for 1:30 pm, and I emailed him a copy of my resume. He also asked me some inane question about whether I have a LinkedIn profile (which I do not).

1:30 came and went. At 1:50, he called me. He offered no apology or explanation for calling me 20 minutes late. He asked me some normal recruitery questions, and he mentioned "trying to find a role for me". I responded with, "Wait, your initial communication indicated that you had a specific role in mind for me."

Nope!

I was pissed off at this point, so when he asked me what skills I had, I responded "You can see a summary of my skills by reading my resume." He told me that my resume didn't have a list of my skills, which it most certainly did, so I just rattled off a few things (specifically, C#/.NET, JavaScript, SQL).

He "found me some jobs" and said he'd email me over a list so I could apply for them. He also asked me (again) if I had a LinkedIn profile, indicating that he managed to totally forget our entire previous conversation in the span of about an hour.

What showed up in my inbox was:

quote:

... Here are the roles for you to review:

(Senior .NET Developer - Trading Systems Gateway Job)
<url to a specific job>

(Senior Java/ C# Developer Job)
<url to a specific job>

<url to a search query on their job site for Ruby jobs>

(C++ roles. Please just apply for one C++ role)
<url to a search query on their job site for C++ jobs>

  • One job I'm qualified for but doesn't look even remotely interesting (the job he initially contacted me about did sound interesting)
  • One job that expects Java development, which I don't have any professional experience doing, and I have no interest in doing
  • A link to Ruby jobs (see above)
  • A link to C++ jobs (see above), along with the incredibly insulting suggestion that I apply for a job I'm not qualified for

This reminds me how much I hate recruiters. I'm tempted to respond to him and let him know how totally unprofessional I found this entire experience to be, but I'm pissed off right now. I'll see if I still think it's a good idea tonight.

Sab669
Sep 24, 2009

Wait, was he a recruiter at a staffing agency, or a recruiter for an "actual" company? At first I thought the latter, but based off the variety of jobs I'd assume the former now. I get emails for jobs all the time where it requires 5+ years of experience in some random skill set. Did you even take the time to read my resume? :fuckoff:

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Sab669 posted:

Wait, was he a recruiter at a staffing agency, or a recruiter for an "actual" company? At first I thought the latter, but based off the variety of jobs I'd assume the former now. I get emails for jobs all the time where it requires 5+ years of experience in some random skill set. Did you even take the time to read my resume? :fuckoff:

It's an internal recruiter for Bloomberg. I never want to work there anyway, so I'll drag their name through the mud a little bit.

Flaming June
Oct 21, 2004

Cool thread.

My background and degree are only loosely related to computers, though they are quantitative. Through working on things during my free time and pushing a functional project online, I was able to today get a job offer in software development at a place that looks like will greatly improve my skills, with a rather substantial pay increase over my previous job. It only took roughly a year, too.

Things are looking up. :unsmith:

JawnV6
Jul 4, 2004

So hot ...

return0 posted:

But VCS has nothing to do with CS? Also, surely these days students enrolling in a CS degree would already be using source control...

Christ, sorry if a 15 minute intro to a tool everyone interacting with computer software creation should at least have a taste of would sully up the purity of a CS program. Have you heard the one about astronomers and telescopes??

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.

JawnV6 posted:

Christ, sorry if a 15 minute intro to a tool everyone interacting with computer software creation should at least have a taste of would sully up the purity of a CS program. Have you heard the one about astronomers and telescopes??
The comparison doesn't even make any sense when people bring it up in terms of coding anyway. See:

Astronomy :: Telescopes -- Computer Science :: Computer Hardware (not programming!)

Garnavis
Aug 25, 2011

Hey, I calls 'em like I sees 'em! I'm a whale biologist.
Hello thread. Recent graduate here, looking for a first "real" programming job (my only prior experience is an undergrad research position). I'm doing the usual job search thing, the one thing I've been concerned about is the transferability of experience. What I'm really wondering is how my choice of an entry-level position might affect my job prospects down the line. I'm sort of paranoid about getting locked in to some particular area of experience just because it's what I was able to get at first.

wolffenstein
Aug 2, 2002
 
Pork Pro
You will have to work harder to "switch over" down the road, but it's certainly possible to do so.

RICHUNCLEPENNYBAGS
Dec 21, 2010

Ithaqua posted:

Yeah, that's not Agile. Don't call it Agile. I strongly recommend reading up on it and actually understanding what it means to do Agile development; it doesn't mean "waterfall, except we change requirements a lot and don't do any documentation". It seems like boring project managery type stuff, but it's a wonderful way to write software. I've worked for agile and non-agile shops, and as a result, part of any interview involves grilling them about how they run projects. If they aren't doing proper agile development, I don't want to work there.

Well, I get that, but it's all totally abstract because I've never done the "real" one.

pigdog
Apr 23, 2004

by Smythe

RICHUNCLEPENNYBAGS posted:

Well, I get that, but it's all totally abstract because I've never done the "real" one.

The ultimate metric is "how long are your release cycles". If they're week or two, then that implies a strong automated test suite and confident incremental development. If it's a month or two or more, then they can call them as agile as they wish, but they'd be doing it wrong.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

pigdog posted:

The ultimate metric is "how long are your release cycles". If they're week or two, then that implies a strong automated test suite and confident incremental development. If it's a month or two or more, then they can call them as agile as they wish, but they'd be doing it wrong.

That's not quite true. I worked at a place that fooled me by saying they did 1 week release cycles. They just had frequent production issues and rollbacks.

Of course, they just meant that they pushed a bunch of poo poo out to production every week. Things could (and did) sit in limbo for weeks and months due to interminable UAT, during which time users decided that the feature (implemented as discussed and designed) didn't actually do what they wanted.

It was just a clusterfuck and one of the major reasons why I left is because the "director" of software development (who, it turns out, had a backround writing classic ASP in the 90s, and had the job because he was married to the owner's cousin) had a totally defeatist attitude about it and told me that there's "no better way" to run a dev shop. :rolleyes:

New Yorp New Yorp fucked around with this message at 15:09 on Jun 21, 2013

DreadCthulhu
Sep 17, 2008

What the fuck is up, Denny's?!

JawnV6 posted:

Christ, sorry if a 15 minute intro to a tool everyone interacting with computer software creation should at least have a taste of would sully up the purity of a CS program. Have you heard the one about astronomers and telescopes??

I think the point is that we still don't quite know how to teach people how to become decent developers. CS programs are there to create new computer scientists, who are people who do research in those institutions. They're traditionally not programs that generate computer programmers. The issue is that obviously something like 95% of their graduates don't want to be researchers, but instead want to be computer programmers in the industry, something they're not "trained" for, because university is not, at least traditionally, a place where artisans and craftsmen are trained.

Thus you end up in this odd situation we have today, where a CS degree is almost mandatory to work at a large company, but it's actually not that useful to you in your day-to-day job. Anecdotally a few of my friends who are recruiting now (ironically one being a phd in compilers) have had a terrible experience with people with CS degrees and finding those that can get poo poo done.

I hope in 10-15 years, especially once the university bubble of bullshit blows over, we will see the CS degree stop being a rite of initiation for people for whom it's a terrible use of their money and time.

Infinotize
Sep 5, 2003

Ithaqua posted:

Bloomberg. I never want to work there anyway,

How come? Just curious. I was talking to a recruiter from there (although seems like a bit more competent one)

No Safe Word
Feb 26, 2005

Infinotize posted:

How come? Just curious. I was talking to a recruiter from there (although seems like a bit more competent one)


Ithaqua posted:

I just had to "blacklist" my first-ever potential employer. Based on the recruiting experience I just had with them, I do not want to ever work for them.

Infinotize
Sep 5, 2003

Thanks for your comprehensive assessment but I inferred there might be some other reason as well.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Infinotize posted:

How come? Just curious. I was talking to a recruiter from there (although seems like a bit more competent one)

I'm basing it off of my interactions with the recruiter. Recruitment is the time to put your best foot forward, not call 20 minutes late for a scheduled call and insist that people apply for jobs they're not qualified for.

If I did that poo poo to a potential employer, they'd disqualify me in a heartbeat.

New Yorp New Yorp fucked around with this message at 23:20 on Jun 21, 2013

Infinotize
Sep 5, 2003

True. That is ridiculous. I think a lot of employers neglect the two-way part of recruitment/interview processes.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

Ithaqua posted:

insist that people apply for jobs they're not qualified for.

Speaking of this, I work for a consulting firm right now. When I signed my letter, I figured I'd be working on in-house projects (because thats what they said in the interview..) but nope, we are basically just a body-hustling firm who sends people on interviews that they're very frequently not qualified for and "hope that they stick". I had one completely awful interview where I was so uncomfortable with how the interviewer was treating me (he was on his cell phone while I was answering his questions) that I hosed up a pretty easy problem on the white board. It was scarring, but at this point I'm able to laugh it off. Standing there unsure of whether or not you're right or wrong while some shithead checks his Blackberry is pretty uncomfortable at first, though!

It pretty much blows and I can't wait to get out, but I am finally staffed on a potentially cool project that will hopefully get me enough experience to go somewhere else by year's end.

Ochowie
Nov 9, 2007

Ithaqua posted:

I'm basing it off of my interactions with the recruiter. Recruitment is the time to put your best foot forward, not call 20 minutes late for a scheduled call and insist that people apply for jobs they're not qualified for.

If I did that poo poo to a potential employer, they'd disqualify me in a heartbeat.

That's a shame that the recruiter was suck a dick. I will say that Bloomberg seems like it would be a cool place to work if you're into financial development type stuff. I've had a terminal for a while and some of they do is really neat.

The Insect Court
Nov 22, 2012

by FactsAreUseless

greatZebu posted:

Software engineering is more of a combination of folk wisdom and popular culture than an academic discipline, so it's not a great topic for a college course.

There should be room for something between full-on systems engineering methodologies on one hand and a few acronyms on the other(AGILE, SOLID, etc.). It's just bizarre that CS curriculums don't all have at least a single semester "software carpentry" type course to cover things like version control, IDEs, debugging, code style and design, and all the other things that are more or less necessary to be a competent programmer but which a lot of CS grads seem to be lacking in.

it is
Aug 19, 2011

by Smythe

it is posted:

PSA: networking with craigslist hookups is a viable strategy and the novelty of being asked what frameworks you've worked in while naked in a bathhouse hot tub is totally worth the $6 to get in.

On the way back to his house we talked about how his test coverage was terrible and how I have a lot of QA experience and he said "we'll definitely have to chat about this later" and I kissed my potential boss good night before driving home.

Queer people watch out for each other. Best sexual orientation ever.

I'm working this job now and it's actually pretty awesome. The pay could be better but the atmosphere is relaxed and fun, and they think I'm some sort of superhero because I don't think they realize QA isn't all that hard. It's legit; don't be afraid to network through fuckbuddies.

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013
Eh. I imagine most computer programmers looking for sex on craigslist are of the "looking for grown men to play with trains while naked; can provide you with frozen crab meat" variety.

Looking for sex at your local .NET meetup, on the other hand...

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.

The Insect Court posted:

There should be room for something between full-on systems engineering methodologies on one hand and a few acronyms on the other(AGILE, SOLID, etc.). It's just bizarre that CS curriculums don't all have at least a single semester "software carpentry" type course to cover things like version control, IDEs, debugging, code style and design, and all the other things that are more or less necessary to be a competent programmer but which a lot of CS grads seem to be lacking in.
I had one required course that was just this, another required course that was probably at least a third about this (both of these classes had been designed by a professor who only taught and worked in industry, no research), and bits and pieces throughout the first few CS classes touched on these topics. CS programs can vary pretty wildly.

Garnavis
Aug 25, 2011

Hey, I calls 'em like I sees 'em! I'm a whale biologist.

The Insect Court posted:

There should be room for something between full-on systems engineering methodologies on one hand and a few acronyms on the other(AGILE, SOLID, etc.). It's just bizarre that CS curriculums don't all have at least a single semester "software carpentry" type course to cover things like version control, IDEs, debugging, code style and design, and all the other things that are more or less necessary to be a competent programmer but which a lot of CS grads seem to be lacking in.

My college had a course like this as well, plus an entire SE degree program. The course covered design patterns and UML and things like that. I found it pretty boring (except for the actual project, which was a real pain but still interesting), but I suppose it's good to know about these things.

Another brief question about job applications: I can apply to a job listing I'm interested in with a form through the company's (IBM, in this case) site, but I feel like I'd be better off actually emailing someone there with a cover letter and my resume. Is there any real advantage to doing things this way or would I just be annoying the HR people and hurting my chances?

EDIT: The main reason I ask is because I have a really nice-looking resume and a very well-written cover letter (thanks Resume2Interviews) and I feel like it would be a shame to just dump a plain-text resume into a form and not be able to use the cover letter, entering a cover letter into the "additional comments" section of the form is acceptable.

Garnavis fucked around with this message at 15:47 on Jun 22, 2013

RICHUNCLEPENNYBAGS
Dec 21, 2010

Garnavis posted:

My college had a course like this as well, plus an entire SE degree program. The course covered design patterns and UML and things like that. I found it pretty boring (except for the actual project, which was a real pain but still interesting), but I suppose it's good to know about these things.

Another brief question about job applications: I can apply to a job listing I'm interested in with a form through the company's (IBM, in this case) site, but I feel like I'd be better off actually emailing someone there with a cover letter and my resume. Is there any real advantage to doing things this way or would I just be annoying the HR people and hurting my chances?

EDIT: The main reason I ask is because I have a really nice-looking resume and a very well-written cover letter (thanks Resume2Interviews) and I feel like it would be a shame to just dump a plain-text resume into a form and not be able to use the cover letter, entering a cover letter into the "additional comments" section of the form is acceptable.

You should just use whatever the format they ask you for is.

jkyuusai
Jun 26, 2008

homegrown man milk

Garnavis posted:

Another brief question about job applications: I can apply to a job listing I'm interested in with a form through the company's (IBM, in this case) site, but I feel like I'd be better off actually emailing someone there with a cover letter and my resume. Is there any real advantage to doing things this way or would I just be annoying the HR people and hurting my chances?

Pulling out https://www.askamanager.com again. Her stance is that you should stick to whatever method they give you for submitting your application and that doing otherwise has you run the risk of looking like you're bad at following basic instructions and that you think you're a special snowflake. Not a great first impression. (She hates most of the systems companies use as they're completely poo poo, but she's also a realist, so...)

Note that if you legit know someone at the company, totally utilize that connection, but realize that you're probably going to be asked to follow the normal submission process either way at some point.

Zero The Hero
Jan 7, 2009

jkyuusai posted:

Pulling out https://www.askamanager.com again. Her stance is that you should stick to whatever method they give you for submitting your application and that doing otherwise has you run the risk of looking like you're bad at following basic instructions and that you think you're a special snowflake. Not a great first impression. (She hates most of the systems companies use as they're completely poo poo, but she's also a realist, so...)

Note that if you legit know someone at the company, totally utilize that connection, but realize that you're probably going to be asked to follow the normal submission process either way at some point.

Personally, I feel that has to be telling of what the companies actually care about. If all they accept is plain text resumes... your pretty format wasn't likely to win them over anyway.

Adbot
ADBOT LOVES YOU

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Zero The Hero posted:

Personally, I feel that has to be telling of what the companies actually care about. If all they accept is plain text resumes... your pretty format wasn't likely to win them over anyway.

They want plain text so that they can feed it into a keyword scraper.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply