News for hackers. Stuff that matters.
Re:Organizing complexity is the most important skill in soft... by aspirin on Monday June 22, 2015 @09:20AM (#9758063)
Organization is the hardest part for me personally in getting better as a developer. How to build a structure that is easy to change and extend. Any tips where to find good books or online sources?
Re:Organizing complexity is the most important skill in soft... by chiachun on Monday June 22, 2015 @09:41AM (#9758205)
Structure and Interpretation of Computer Programs. This famous book emphasized controlling complexity and how to build a structure that is easy to extend.
Re:Organizing complexity is the most important skill in soft... by uxcn on Monday June 22, 2015 @12:50PM (#9759572)
The cost of complexity is exponential -Rob Pike
Re:Organizing complexity is the most important skill in soft... by Toine on Monday June 22, 2015 @09:48AM (#9758263)
Same here. I only have 2 years of experience, but right now my opinion is that this is not something you learn in a book (for the moment).

You can learn how to create clean, readable methods and classes with a book (1).

You can learn how to refactor old methods and classes with a book (2).

You can learn how to organize a small team to allow fast iterations with many books.

But building a project lasting more than a few months with constant changes in the requirements, new developers every month, new SDKs and frameworks every 3 days, without the code rotting to death and everything going out of control is a different story, at least for me.

I guess you just learn by watching old guys do what they do after decades of experience...unless someone has a magic book for me?

(1) http://www.amazon.com/Clean-Code-Handbook-Software-Craftsman...

(2) http://www.amazon.com/Refactoring-Improving-Existing-Addison...

Re:Organizing complexity is the most important skill in soft... by sterlingw on Monday June 22, 2015 @02:02PM (#9760075)
I just finished a book called "Practical Object Oriented Design in Ruby." It teaches you how to build OO applications that are pleasant to maintain. I highly recommend it.

http://www.amazon.com/Practical-Object-Oriented-Design-Ruby-...

Re:Organizing complexity is the most important skill in soft... by Glide on Monday June 22, 2015 @11:05AM (#9758801)
My personal experience is that I had to maintain a set of applications I wrote for a company. The same application had to be used repeatedly (3-5 times) a year because it supported a specific business processes. It was mundane work, but did it teach me how to organize because it made the pain of disorganized code very real. That one hack comes back to haunt you several times a year.

I was lucky that this was one of the first things I had learned as a developer out of school. It was a little different because the projects were small enough to be solo, but it was humbling because all of the mistakes were my own.

Re:Organizing complexity is the most important skill in soft... by DanielStraight on Monday June 22, 2015 @10:06AM (#9758379)
The classic essay Big Ball of Mud is relevant as well:

http://www.laputan.org/mud/mud.html

Re:Organizing complexity is the most important skill in soft... by vollmond on Monday June 22, 2015 @09:40AM (#9758199)
Check out Clean Code by Robert C. Martin. May be helpful.
Re:Organizing complexity is the most important skill in soft... by minthd on Monday June 22, 2015 @01:34PM (#9759856)
>> How to build a structure that is easy to change and extend.

This is a very good book on subject, very clear:

http://www.amazon.com/Practical-Object-Oriented-Design-Ruby-...