News for hackers. Stuff that matters.
Re:Guide for Technical Development by keerthiko on Tuesday May 12, 2015 @09:32AM (#9531584)
Hmm, I was a little disappointed with the list for a few reasons

- Mostly just stuff that you learn along the way if you remotely like coding and go to an engineering school

- Doesn't talk about what to NOT spend/waste too much time on in favour of the listed things

- Doesn't list getting familiar with any version control systems. Obtuse as they may be, it's a must-learn skill for a software developer before being able to contribute to production code.

Re:Guide for Technical Development by gabipurcaru on Tuesday May 12, 2015 @09:49AM (#9531709)
You seem to be contradicting yourself -- "just stuff that you learn along the way" vs "Doesn't list getting familiar with any version control systems". Aren't version control systems "stuff that you learn along the way" in your opinion?

IMO, any resource like the one in the OP is going to get bashed ("not the way I would learn stuff"). Might as well learn something from it.

Re:Guide for Technical Development by squeaky-clean on Tuesday May 12, 2015 @11:44AM (#9532578)
> Aren't version control systems "stuff that you learn along the way" in your opinion?

I don't think so. The reasons for using version control when programming solo aren't obvious. Especially with the intimidating learning curve something like git has for newcomers. Most CS students I've tutored would either dropbox their code, or store it by emailing it to themselves.

And then there's the difference between using version control just for yourself, or a small group project, vs using version control on a large application, such as OSS with hundreds of contributors. Workflows, best practices, etc.

I had never used any version control until my first internship. I didn't really put any effort into a good git workflow until I was at a company that actually cared about establishing one.

Re:Guide for Technical Development by exelius on Tuesday May 12, 2015 @11:04AM (#9532265)
No, you pretty much don't need to bother with version control systems unless you're writing code on a team with others. And even then, students will likely never deal with any of the complexities that arise in the real world like branch merges, continuous integration, etc.

In general, school teaches you the content without the tradecraft. You'll need both to be a "rockstar" developer, and I don't see how you could ever get the tradecraft without working in the industry.

Re:Guide for Technical Development by juliangregorian on Tuesday May 12, 2015 @03:44PM (#9534350)
I can't see any decent school not teaching version control. It's immensely valuable even to the solo developer. Hell, my shitty school taught us Microsoft SourceSafe, which was hilarious because two team members couldn't work on the same file simultaneously. You'd get lots of late night phone calls: "Check in the damn file so I can edit it!"
Re:Guide for Technical Development by JoeAltmaier on Tuesday May 12, 2015 @03:47PM (#9534380)
That's a misconception. If you set the VSS 'lock on checkout' flag, then yes it sucks. Its a mistake to set that on a project, yet its the default (?!)

There are adequate merge tools available in VSS, like any other source control tool. Disabling them is silly.

I consider source control to BEGIN when two people check out the same file. If you can't do that, then its really version control.

Re:Guide for Technical Development by iovar on Tuesday May 12, 2015 @11:21AM (#9532403)
>> No, you pretty much don't need to bother with version control systems unless you're writing code on a team with others.

If you are writing hello-world, maybe you don't need a VCS. Anything bigger than that can benefit from using one.

Re:Guide for Technical Development by crpatino on Tuesday May 12, 2015 @02:35PM (#9533883)
I have a pretty clear recollection of having heard about VCS in an undergraduate class, but presented in the most boring possible way, so I learned whatever I needed to regurgitate for the exam and moving one.

A few years later, I found myself working in the industry and using a real VCS (Microsoft's dont' recall the name), and realizing this was the same thing I have being doing lamely for the last two years with daily zip files and lots of notes on the README.txt for each project.

Re:Guide for Technical Development by ska on Tuesday May 12, 2015 @11:47AM (#9532597)
> No, you pretty much don't need to bother with version control systems unless you're writing code on a team with others.

You may not "need" to, but almost any individual project will benefit from it, also.

Re:Guide for Technical Development by exelius on Tuesday May 12, 2015 @12:29PM (#9532885)
Right, but if you've never used one, you don't know what you're missing. The default of coding without one works just fine for most school projects.
Re:Guide for Technical Development by JoeAltmaier on Tuesday May 12, 2015 @03:48PM (#9534388)
Yet students are among those MOST confused by "it worked a minute ago; what did I change that broke it?!" Keeping your code under source control allows answering that question. A useful tool and lesson for the student.
Re:Guide for Technical Development by rifung on Tuesday May 12, 2015 @12:12PM (#9532767)
I dont think version control is necessarily something you learn along the way if you are just learning on your own. It is a good idea for any nontrivial project to have, but I also dont feel like its such a necessity someone who is learning would go out of their way to use it. I'm not even sure everyone would necessarily be exposed to it and know it exists when just learning, unless they decided to contribute to OSS which seems pretty far down.
Re:Guide for Technical Development by robmcm on Tuesday May 12, 2015 @09:40AM (#9531640)
I would agree with VCS, preferably distributed and centralised.

It does mention GitHub and Kiln (Mercurial)

"Work on a small piece of a large system (codebase), read and understand existing code, track down documentation, and debug things. Notes: Github is a great way to read other people’s code or contribute to a project.

Online Resources: Github, Kiln"

Re:Guide for Technical Development by allworknoplay on Tuesday May 12, 2015 @10:22AM (#9531932)
I don't agree at all. First, although it doesn't state it, it feels to me (and was confirmed by a googler in a separate thread) like this is meant for university students, for whom there is no "along the way" -- just academic CS courses.

Second, they did bring up version control: "Work on a small piece of a large system (codebase), read and understand existing code, track down documentation, and debug things. Notes: Github is a great way to read other people’s code or contribute to a project. Online Resources: Github, Kiln"

Re:Guide for Technical Development by edpichler on Tuesday May 12, 2015 @09:46AM (#9531684)
Sorry for disagreeing a little bit, but being familiar with a tool like a version control system is the least of the problems.

It's important, but not that much to be a item on this list.